मुझे किसी निर्दिष्ट निर्देशिका में जेपीजी फ़ाइलों की कुल गणना प्राप्त करने की आवश्यकता है, जिसमें इसकी सभी उपनिर्देशिकाएं शामिल हैं। कोई उप-उप निर्देशिका नहीं।PHP निर्देशिका में कुल फ़ाइलों और उपनिर्देशिका फ़ंक्शन
संरचना इस तरह दिखता है:
dir1/ 2 files subdir 1/ 8 files
कुल dir1 = 10 फ़ाइलें
dir2/ 5 files subdir 1/ 2 files subdir 2/ 8 files
कुल dir2 = 15 फाइलें
मैं इस समारोह है, जो ऐसा नहीं करता है ठीक काम करें क्योंकि यह केवल अंतिम उपनिर्देशिका में फ़ाइलों की गणना करता है, और कुल वास्तविक से 2x अधिक है फाइलों का माउंट। (इच्छा उत्पादन 80 यदि मैं पिछले subdir में 40 फ़ाइलें) प्रत्येक छोरों के लिए
public function count_files($path) {
global $file_count;
$file_count = 0;
$dir = opendir($path);
if (!$dir) return -1;
while ($file = readdir($dir)) :
if ($file == '.' || $file == '..') continue;
if (is_dir($path . $file)) :
$file_count += $this->count_files($path . "/" . $file);
else :
$file_count++;
endif;
endwhile;
closedir($dir);
return $file_count;
}
धन्यवाद लॉरेंस!यह पूरी तरह से काम किया :) – Neoweiter
कोई जांच नहीं। –
@Neoweiter की सहायता करने में खुशी हुई है, यह उप-उप निर्देशिका भी स्कैन करता है, मैंने सोचा था कि आप विशेष रूप से केवल उप-डीआईआर स्तर तक चाहते थे? –