php

位置:IT落伍者 >> php >> 浏览文章

PHP对文本文件的搜索


发布日期:2024年04月06日
 
PHP对文本文件的搜索
——此文章摘自《完全手册PHP网络开发详解》定价 特价 详细>>

本节将介绍一个对文件夹下全部文本文件进行搜索的方法PHP程序通过对文件夹下全部文件的读取来检测文件是否包含搜索的内容具体代码如下所示

<?php

//获得关键词

$colname_rs = $_GET[key];

$result = explode($_GET[key]);

$file_result = array(); //初始化数组

$dir = files/; //定义路径

$dir_res = opendir($dir); //打开目录

while($filen=readdir($dir_res)) //循环读取目录中的文件

{

if($filen == || $filen == ) //将当前目录和父目录过滤掉

{

continue;

}

$file = fopen($dir$filen r); //打开文件

$filesize = filesize($dir$filen); //获取文件长度

$filecont = fread($file $filesize); //获取文件的全部内容

fclose($file); //关闭文件

//循环搜索文件

for($i=$j=;$i<count($result);$i++)

{

if($result[$i]!= && strstr($filecont $result[$i]))

//如果文件找到则将文件名保存到数组中

{

$file_result[$j] = $filen;

$j++;

}

}

}

closedir($dir_res); //关闭目录

?>

<html>

<head>

<title>Search</title>

<meta httpequiv=ContentType content=text/html; charset=gb>

</head>

<body>

<form name=form method=get action=?>

<div align=center>请输入要搜索的关键词

<input name=key type=text size= value=<?php echo $_GET[key] ?>>

<input type=submit value=Submit>

</div>

</form>

<p align=center><B>当前关键词

<?php

for($i=;$i<count($result);$i++) //获得所有的关键词

{

echo $result[$i] ;

}

?></B></p>

<p><hr></p>

<?php for($j=;$j<count($file_result);$j++) { ?>

<p>* <a href=<?php echo $dir$file_result[$j]; ?>><?php echo $file_result [$j]; ?></a></p>

<?php } ?>

</body>

</html>

运行结果如图所示

搜索文本文件

               

上一篇:开发大型PHP项目的技巧与方法[2]

下一篇:加速PHP动态网站 关于MySQL索引分析优化