我正在用 php 组合一个搜索引擎,它会遍历一些目录并在运行时回显过滤后的结果。
我的问题是,在所有搜索完成之前不会执行回显,导致页面在脚本完成之前保持空白。
这是正常的吗?如果是这样,我怎样才能在调用 echo 时显示搜索结果?
我还将最终将结果中的图像写入屏幕。可以调用 JS document.write 函数而不是呼应所有内容,而是通过同时利用客户端和服务器端来加快速度吗?
编辑:这是迭代的代码。我有一个标记系统,但该部分目前已被注释掉......
function checkTags($dir, $search){
global $tag;
$filesInDir = array_map('strtolower', scandir($dir)); // lower case the files
$filterOut = array('.','..');
$filesInDir = array_diff($filesInDir, $filterOut); // get rid of the current '.' and parent '..' values
// print_r($filesInDir);
foreach($filesInDir as $file) {
if($file == $tag) { // found a tag
echo 'found tag: '.$file.'<br>';
/* $tagDir = dirname($tag);
$tagContents = strtolower(file_get_contents($file).'<br>'.$tagDir); // adding full path to include parent dirs in tag searching
foreach($search as $s){
if(strpos($tagContents, $s) !== false){ // the tag has a search word
//getFiles($tagDir);
}
} */
}
elseif(is_dir($dir.'/'.$file) !== false) { //is a folder, so try in there
//print_r($file);
echo 'found dir: '.htmlspecialchars($file).'<br>';
checkTags($dir.'\\'.$file, $search);
}
}
}
谢谢