概述
我有一个1.2GB的文件,其中包含一行字符串.
我需要的是搜索整个文件以找到另一个字符串的位置(目前我有一个要搜索的字符串列表).
我现在正在做的方法是打开大文件并移动指针通过4Kb块,然后将指针X位置移回文件中并获得更多4Kb.
我的问题是要搜索更大的字符串,他需要更长的时间才能获得它.
你能给我一些想法来优化脚本以获得更好的搜索时间吗?
这是我的实施:
function busca($inici){
$limit = 4096;
$big_one = fopen('big_one.txt','r');
$options = fopen('options.txt','r');
while(!feof($options)){
$search = trim(fgets($options));
$retro = strlen($search);//maybe setting this position absolute? (like 12 or 15)
$punter = 0;
while(!feof($big_one)){
$ara = fgets($big_one,$limit);
$pos = strpos($ara,$search);
$ok_pos = $pos + $punter;
if($pos !== false){
echo "$pos - $punter - $search : $ok_pos
";
break;
}
$punter += $limit - $retro;
fseek($big_one,$punter);
}
fseek($big_one,0);
}
}
提前致谢!
最后
以上就是淡淡老鼠为你收集整理的php提升检索的速度,PHP中的速度字符串搜索的全部内容,希望文章能够帮你解决php提升检索的速度,PHP中的速度字符串搜索所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复