造一个函数,给一个文件夹的路径,返回该文件夹下文件数量
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 }