网站地图    收藏   

主页 > php专栏 > php文件操作 >

php文件名与文件内容查找器实例 - php文件操作

来源:自学PHP网    时间:2014-11-28 00:07 作者: 阅读:

[导读] php文件查找程序,输入一个路径确定后会遍历目录下所有的文件和文件夹,通过递归可以找到文件夹下面的每一个文件,再通过文件名和输入的关键字匹配,则可以查找到你想要的文件,对于...

php文件名与文件内容查找器实例

php文件查找程序,输入一个路径确定后会遍历目录下所有的文件和文件夹,通过递归可以找到文件夹下面的每一个文件,再通过文件名和输入的关键字匹配,则可以查找到你想要的文件,对于本地,我们可以利用windows自带的查找去进行查找,但是对于线上的话,如查找ftp空间里面文件,本程序是很有用的.

php文件查找器源码,代码如下:

  1. <html> 
  2.  <head> 
  3.   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  4.   <title>php版文件查找(file search)</title> 
  5.  </head> 
  6.  <body> 
  7.   <form action="" method="post"
  8.   <p> 文件查找(注:区分大小写)</p> 
  9.   <p>路径:<input type="text" name="path" /></p> 
  10.   <p>查找:<input type="text" name="key" /></p> 
  11.   <p><input type="submit" name="sub" value=" 开 始 " /></p> 
  12.   </form> 
  13.  </body> 
  14. </html> 
  15. <?php 
  16. /* 
  17.  * 注:区分大小写 
  18.  */ 
  19. if(!emptyempty($_POST['path'])&&!emptyempty($_POST['key'])){ 
  20.  echo "在路径 ".$_POST['path']."/ 中查找 ".$_POST['key']." 的结果为:<hr/>"
  21.  $file_num = $dir_num = 0; 
  22.  $r_file_num = $r_dir_num= 0; 
  23.  $findFile = $_POST['key']; 
  24.  function delDirAndFile( $dirName ){  
  25.   if ( $handle = @opendir( "$dirName" ) ) { 
  26.    while ( false !== ( $item = readdir( $handle ) ) ) {  
  27.     if ( $item != "." && $item != ".." ) {  
  28.      if ( is_dir"$dirName/$item" ) ) {  
  29.       delDirAndFile( "$dirName/$item" ); 
  30.      } else {  
  31.       $GLOBALS['file_num']++; 
  32.       if(strstr($item,$GLOBALS['findFile'])){ 
  33.        echo " <span><b> $dirName/$item </b></span><br />n"
  34.        $GLOBALS['r_file_num']++; 
  35.       } 
  36.      }  
  37.     } 
  38.    } 
  39.    closedir$handle );  
  40.    $GLOBALS['dir_num']++; 
  41.    if(strstr($dirName,$GLOBALS['findFile'])){ 
  42.     $loop = explode($GLOBALS['findFile'],$dirName); 
  43.     $countArr = count($loop)-1; 
  44.     if(emptyempty($loop[$countArr])){ 
  45.      echo " <span style='color:#297C79;'><b> $dirName </b></span><br />n"
  46.      $GLOBALS['r_dir_num']++; 
  47.     } 
  48.    } 
  49.   }else
  50.    die("没有此路径!"); 
  51.   } 
  52.  } 
  53.  
  54.  delDirAndFile($_POST['path']); 
  55.  echo "<hr/>本次共搜索到".$file_num."个文件,文件夹".$dir_num."个<br/>"
  56.  echo "<hr/>符合结果的共".$r_file_num."个文件,文件夹".$r_dir_num."个<br/>"
  57. ?> 

上面只是查找文件,下面看一个查找文件中的字符是否包括我们要找的东西,自己写的一个批量查找文件内容的php程序,我是拿来扫描文件特征码的,现在我贴出代码,供大家参考,代码如下:

  1. <?php 
  2. if ($_POST ['Submit'] == '开始') { 
  3.  $total = 0; //文件总数 
  4.  $dangerous = array (); //危险文件 
  5.  $dangerous_content = $_POST ["sstr"]; 
  6.  $find_path = $_POST ["searchpath"]; 
  7.  $shortname = $_POST ["shortname"]; 
  8.  echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>"
  9.  echo "<html>"
  10.  echo "<head>"
  11.  echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />"
  12.  echo "</head>"
  13.  echo "<body>"
  14.  $begin_time=date("U"); 
  15.  // $dangerous_content = "小亮,Root_GP,Root_CSS,c99sh_updateurl,c99sh_sourcesurl,640684770"; 
  16.  visitFile ( $find_path$shortname ); 
  17.  $end_time=date("U"); 
  18.  foreach ($dangerous as $d){ 
  19.   echo $d."<br/>"
  20.  } 
  21.  echo "查找文件总数:" . $total." 危险文件:".count($dangerous)." 总用时".($end_time-$begin_time)."秒"
  22.  echo "</body>"
  23.  echo "</html>"
  24.  //if (! empty ( $dangerous )) { 
  25.   //foreach ( $dangerous as $dan ) { 
  26.  //echo "[error]" . $dan . "<br/>"; 
  27.  /

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论