set_time_limit("600");//防止超时
//获取搜索关键字
$keyword=trim($_POST['keyword']);
//检查是否为空
if($keyword==""){
echo"搜索的关键字不能为空";
exit;//结束程序
}
/*
*
*listFiles($dir,$keyword,&$array)
*功能: 递归遍历所有页面
*说明: $dir 搜索的目录,$keyword搜索关键字,&$array存放带有关键字的页面(引用传递)
*/
function listFiles($dir,$keyword,&$array){
$handle=opendir($dir);
while(false!==($file=readdir($handle))){
if($file!="."&&$file!=".."){
if(is_dir("$dir/$file")){
listFiles("$dir/$file",$keyword,$array);
}else{
$data=fread(fopen("$dir/$file","r"),filesize("$dir/$file"));
if(preg_match("
]+)>(.+)",$data,$b)){$body=strip_tags($b["2"]);
}else{
$body=strip_tags($data);
}
if($file!="search.php"){
if(preg_match("$keyword",$body)){
if(preg_match("
(.+)",$data,$m)){$title=$m["1"];
}else{
$title="没有标题";
}
$array[]="$dir/$file $title";
}
}
}
}
}
}
/**********************************************************************************************************/
$array=array();
listFiles(".","$keyword",$array);
foreach($array as $value){
//拆开
list($filedir,$title)=split("[ ]",$value,"2");
//输出
echo "$title "."
";
}
?>