文件操作之获取某个文件夹下的所有文件的数量

造一个函数,给一个文件夹的路径,返回该文件夹下文件数量

 1 <?php
 2 //可以用方法来做  就是给我一个文件夹然后我返回给你这个文件夹里面的文件数量
 3 
 4 echo  fileCount("./0306");
 5 
 6 function fileCount($fname)
 7 {
 8     //该文件夹下所有文件数量
 9     $sum = 0;
10     //判断给的是不是个文件夹
11     if(is_dir($fname))
12     {
13         //打开文件夹
14         $dir = opendir($fname);
15         //readdir($dir)读到的只是一条的文件名,这里我们需要文件的完整路径。
16         while($wenjian = readdir($dir))
17         {
18             if($wenjian!="." && $wenjian!="..")
19             {
20                 //$furl是文件的完整路径
21                 $furl = $fname."/".$wenjian;
22                 //这样就实现了在while循环里面把这个给的文件夹里的所有的文件的完整路径全部取到了。
23                 
24                 //每个文件的完整路径都有了然后再判断这个东西是不是个文件
25                 if(is_file($furl))
26                 {
27                     //如果是一个文件就加个1
28                     $sum++;
29                 }
30                 //在判断一下文件夹里面是否还有文件夹
31                 else if(is_dir($furl))
32                 {
33                     //如果是文件夹那么我们就要获取该文件夹内的文件的数量,然后累加起来
34                     $sum = $sum +fileCount($furl);
35                     
36                 }
37             }
38         }
39         //关闭文件夹
40         closedir($dir);
41         return $sum;    
42     }
43     else
44     {
45         echo "给的文件夹不对";
46     }
47 }

第一个方法:

往文件夹里面添加文件

1 <body>
2 <h1>上传文件</h1>
3 <form action="123.php" method="post" enctype="multipart/form-data">
4 请选择文件:<input type="file" name="file" />
5           <input type="submit" value="提交" />
6 </form>
7 </body>

后台处理页面

 1 <?php
 2 $arr = $_FILES["file"];
 3 if($arr["type"]=="image/jpeg"||$arr["type"]=="image/png"&&$arr["size"]<1024000)
 4 {
 5     $filename = "./images/".time().$arr["name"];
 6     if(file_exists($filename))
 7     {
 8         echo "该文件已存在";
 9     }
10     else
11     {
12         $filename = iconv("UTF-8","gb2312",$filename);
13         move_uploaded_file($arr["tmp_name"],$filename);
14     }
15 }
16 else
17 {
18     echo "您所提交的文件大小或类型不正确";
19 }

第二个方法:

给出一个文件夹,得出这个文件夹里面有多少个文件

 1 <?php
 2 
 3 echo Countfile("./0306");
 4 function Countfile($filename)
 5 {
 6     $sum= "0";
 7     if(is_dir($filename))
 8     {
 9         $dir = opendir($filename);
10         while($wenjian = readdir($dir))
11         {
12             if($wenjian!="."&&$wenjian!="..")
13             {
14                 $furl = $filename."/".$wenjian;
15                 if(is_file($furl))
16                 {
17                     $sum++;
18                 }
19                 else if(is_dir($furl))
20                 {
21                     $sum =$sum + Countfile($furl);
22                 }
23             }
24         }
25         closedir($dir);
26         return  $sum;
27     }
28     else
29     {
30         echo "你所给的文件夹不正确";
31     }
32 }
原文地址:https://www.cnblogs.com/shandayuan/p/7257945.html