php文件名与文件内容查找器实例
php文件查找程序,输入一个路径确定后会遍历目录下所有的文件和文件夹,通过递归可以找到文件夹下面的每一个文件,再通过文件名和输入的关键字匹配,则可以查找到你想要的文件,对于本地,我们可以利用windows自带的查找去进行查找,但是对于线上的话,如查找ftp空间里面文件,本程序是很有用的.
php文件查找器源码,代码如下:
<html> <head> <meta http-equiv= "Content-Type" content= "text/html; charset=utf-8" /> <title>php版文件查找(file search)</title> </head> <body> <form action= "" method= "post" > <p> 文件查找(注:区分大小写)</p> <p>路径:<input type= "text" name= "path" /></p> <p>查找:<input type= "text" name= "key" /></p> <p><input type= "submit" name= "sub" value= " 开 始 " /></p> </form> </body> </html> <?php /* * 注:区分大小写 */ if (! empty empty ( $_POST [ 'path' ])&&! empty empty ( $_POST [ 'key' ])){ echo "在路径 " . $_POST [ 'path' ]. "/ 中查找 " . $_POST [ 'key' ]. " 的结果为:<hr/>" ; $file_num = $dir_num = 0; $r_file_num = $r_dir_num = 0; $findFile = $_POST [ 'key' ]; function delDirAndFile( $dirName ){ if ( $handle = @opendir( "$dirName" ) ) { while ( false !== ( $item = readdir( $handle ) ) ) { if ( $item != "." && $item != ".." ) { if ( is_dir ( "$dirName/$item" ) ) { delDirAndFile( "$dirName/$item" ); } else { $GLOBALS [ 'file_num' ]++; if ( strstr ( $item , $GLOBALS [ 'findFile' ])){ echo " <span><b> $dirName/$item </b></span><br />n" ; $GLOBALS [ 'r_file_num' ]++; } } } } closedir ( $handle ); $GLOBALS [ 'dir_num' ]++; if ( strstr ( $dirName , $GLOBALS [ 'findFile' ])){ $loop = explode ( $GLOBALS [ 'findFile' ], $dirName ); $countArr = count ( $loop )-1; if ( empty empty ( $loop [ $countArr ])){ echo " <span style='color:#297C79;'><b> $dirName </b></span><br />n" ; $GLOBALS [ 'r_dir_num' ]++; } } } else { die ( "没有此路径!" ); } } delDirAndFile( $_POST [ 'path' ]); echo "<hr/>本次共搜索到" . $file_num . "个文件,文件夹" . $dir_num . "个<br/>" ; echo "<hr/>符合结果的共" . $r_file_num . "个文件,文件夹" . $r_dir_num . "个<br/>" ; } ?>上面只是查找文件,下面看一个查找文件中的字符是否包括我们要找的东西,自己写的一个批量查找文件内容的php程序,我是拿来扫描文件特征码的,现在我贴出代码,供大家参考,代码如下:
<?php if ( $_POST [ 'Submit' ] == '开始' ) { $total = 0; //文件总数 $dangerous = array (); //危险文件 $dangerous_content = $_POST [ "sstr" ]; $find_path = $_POST [ "searchpath" ]; $shortname = $_POST [ "shortname" ]; echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>" ; echo "<html>" ; echo "<head>" ; echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />" ; echo "</head>" ; echo "<body>" ; $begin_time = date ( "U" ); // $dangerous_content = "小亮,Root_GP,Root_CSS,c99sh_updateurl,c99sh_sourcesurl,640684770"; visitFile ( $find_path , $shortname ); $end_time = date ( "U" ); foreach ( $dangerous as $d ){ echo $d . "<br/>" ; } echo "查找文件总数:" . $total . " 危险文件:" . count ( $dangerous ). " 总用时" .( $end_time - $begin_time ). "秒" ; echo "</body>" ; echo "</html>" ; //if (! empty ( $dangerous )) { //foreach ( $dangerous as $dan ) { //echo "[error]" . $dan . "<br/>"; /查看更多关于php文件名与文件内容查找器实例 - php文件操作的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did27836