php查找文件内容关键字实例代码

    1. <?php

      创新互联专注于网站建设,为客户提供成都做网站、成都网站建设、网页设计开发服务,多年建网站服务经验,各类网站都可以开发,成都品牌网站建设,公司官网,公司展示网站,网站设计,建网站费用,建网站多少钱,价格优惠,收费合理。

    2. /**

    3. * 文件: search.php

    4. * 功能: 搜索指定目录下的HTML文件

    5. */

    6. /* 基本函数 */

    7. //获取目录下文件函数

    8. function getFile($dir)

    9. {

    10.         $dp = opendir($dir);

    11.         $fileArr = array();

    12.         while (!false == $curFile = readdir($dp)) {

    13.                 if ($curFile!="." && $curFile!=".." && $curFile!="") {

    14.                         if (is_dir($curFile)) {

    15.                                 $fileArr = getFile($dir."/".$curFile);

    16.                         } else {

    17.                                 $fileArr[] = $dir."/".$curFile;

    18.                         }

    19.                 }

    20.          }

    21.         return $fileArr;

    22. }

    23. //获取文件内容

    24. function getFileContent($file)

    25. {

    26.         if (!$fp = fopen($file, "r")) {

    27.                 die("Cannot open file $file");

    28.         }

    29.         while ($text = fread($fp, 4096)) {

    30.                 $fileContent .= $text;

    31.         }

    32.         return $fileContent;

    33. }

    34. //搜索指定文件

    35. function searchText($file, $keyword)

    36. {

    37.         $text = getFileContent($file);

    38.         if (preg_match("/$keyword/i", $text)) {

    39.                 return true;

    40.         }

    41.         return false;

    42. }

    43. //搜索出文章的标题

    44. function getFileTitle($file, $default="None subject")

    45. {

    46.         $fileContent = getFileContent($file);

    47.         $sResult = preg_match("/<title>.*</title>/i", $fileContent, $matchResult);

    48.         $title = preg_replace(array("/(<title>)/i","/(</title>)/i"), "",        $matchResult[0]);

    49.         if (empty($title)) {

    50.                 return $default;

    51.         } else {

    52.                 return $title;

    53.         }

    54. }

    55. //获取文件描述信息

    56. function getFileDescribe($file,$length=200, $default="None describe")

    57. {

    58.         $metas = get_meta_tags($file);

    59.         if ($meta[description] != "") {

    60.                 return $metas[description];

    61.         }

    62.          $fileContent = getFileContent($file);

    63.         preg_match("/(<body.*</body>)/is", $fileContent, $matchResult);

    64.         $pattern = array("/(<[^x80-xff] >)/i","/(<input.*>) /i", "/(<a.*>) /i", "/(<img.*>) /i", "/([<script.*>]) .*([</script>]) /i","/&amp;/i","/&quot;/i","/&#039;/i", "/s/");

    65.         $description = preg_replace($pattern, "", $matchResult[0]);

    66.         $description = mb_substr($description, 0, $length)." ...";

    67.         return $description;

    68. }

    69. //加亮搜索结果中的关键字

    70. function highLightKeyword($text, $keyword, $color="#C60A00")

    71. {

    72.         $newword = "<font color=$color>$keyword</font>";

    73.         $text = str_replace($keyword, $newword, $text);

    74.         return $text;

    75. }

    76. //获取文件大小(KB)

    77. function getFileSize($file)

    78. {

    79.         $filesize = intval(filesize($file)/1024)."K";

    80.         return $filesize;

    81. }

    82. //获取文件最后修改的时间

    83. function getFileTime($file)

    84. {

    85.         $filetime = date("Y-m-d", filemtime($file));

    86.         return $filetime;

    87. }

    88. //搜索目录下所有文件

    89. function searchFile($dir, $keyword)

    90. {

    91.         $sFile = getFile($dir);

    92.         if (count($sFile) <= 0) {

    93.                 return false;

    94.         }

    95.         $sResult = array();

    96.         foreach ($sFile as $file) {

    97.                 if (searchText($file, $keyword)) {

    98.                         $sResult[] = $file;

    99.                 }

    100.         }

    101.         if (count($sResult) <= 0) {

    102.                 return false;

    103.         } else {

    104.                 return $sResult;

    105.         }

    106. }

    107. /* 测试代码 */

    108. //指定要搜索的目录

    109. $dir = "./php_Linux";

    110. //要搜索的关键字

    111. $keyword = "sendmail";

    112. $fileArr = searchFile($dir, $keyword);

    113. $searchSum = count($fileArr);

    114. echo "搜索关键字: <b>$keyword</b> &nbsp; 搜索目录: <b>$dir</b> &nbsp; 搜索结果: <b>$searchSum</b><br><hr size=1><br>";

    115. if ($searchSum <= 0) {

    116. echo "没有搜索到任何结果";

    117. } else {

    118. for

本文题目:php查找文件内容关键字实例代码
网页URL:https://www.cdcxhl.com/article30/ipsoso.html

成都网站建设公司_创新互联,为您提供外贸网站建设网站策划网站收录企业建站网站设计公司全网营销推广

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

手机网站建设