详解PHP实现文件搜索的方法

*文
发布: 2018-01-05 11:39:05
原创
2880人浏览过

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><span>立即学习</span>“<a href="https://pan.quark.cn/s/7fc7563c4182" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">PHP免费学习笔记(深入)</a>”;</p>
 <p>查找:<input type="text" name="key" /></p>
                    <div class="aritcle_card">
                        <a class="aritcle_card_img" href="/xiazai/code/11082">
                            <img src="https://img.php.cn/upload/webcode/000/000/018/176489820811639.jpg" alt="行业贸易网站管理系统 2007 Beta 1">
                        </a>
                        <div class="aritcle_card_info">
                            <a href="/xiazai/code/11082">行业贸易网站管理系统 2007 Beta 1</a>
                            <p>1.修正BUG站用资源问题,优化程序2.增加关键词搜索3.修改报价4.修正BUG 水印问题5.修改上传方式6.彻底整合论坛,实现一站通7.彻底解决群发垃圾信息问题。注册会员等发垃圾邮件7.彻底解决数据库安全9.修改交易方式.增加网站担保,和直接交易两中10.全站可选生成html.和单独新闻生成html(需要装组建)11. 网站有10中颜色选择适合不同的行业不同的颜色12.修改竞价格排名方式13.修</p>
                            <div class="">
                                <img src="/static/images/card_xiazai.png" alt="行业贸易网站管理系统 2007 Beta 1">
                                <span>0</span>
                            </div>
                        </div>
                        <a href="/xiazai/code/11082" class="aritcle_card_btn">
                            <span>查看详情</span>
                            <img src="/static/images/cardxiayige-3.png" alt="行业贸易网站管理系统 2007 Beta 1">
                        </a>
                    </div>
                
 <p><input type="submit" name="sub" value=" 开 始 " /></p>
 </form>
 </body>
</html>
<?php
/*
 * 注:区分大小写
 * by: http://www.daixiaorui.com
 */
if(!empty($_POST['path'])&&!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($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如何实现数独求解

详解PHP如何实现csv文件导入数据库

以上就是详解PHP实现文件搜索的方法的详细内容,更多请关注php中文网其它相关文章!

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号