我现在遇到一个问题,就是必须循环读取一个url(不同参数)文件,大概150次左右,然后依次返回文件的第一行内容。
部分代码如下:
while($row4 = $db->fetch_array($res4))
{
$order4[$i]=$row4;
$imageurl="http://127.0.0.1:8012/getimage.cgi?receiver=".$row4['Email']; $order4[$i]['image']=file_get_contents($imageurl);
$i++;
}
文件内容大概是一个图片的地址:“../images/127-3.bmp”。
getimage.cgi文件是没权限更改的。
上面是实现了,可是速度不是很快,自己测试了下主要影响速度的地方是file_get_contents,
问下各位要怎样优化才能提高速度呢。
部分代码如下:
while($row4 = $db->fetch_array($res4))
{
$order4[$i]=$row4;
$imageurl="http://127.0.0.1:8012/getimage.cgi?receiver=".$row4['Email']; $order4[$i]['image']=file_get_contents($imageurl);
$i++;
}
文件内容大概是一个图片的地址:“../images/127-3.bmp”。
getimage.cgi文件是没权限更改的。
上面是实现了,可是速度不是很快,自己测试了下主要影响速度的地方是file_get_contents,
问下各位要怎样优化才能提高速度呢。
谢谢了!有试过用fgets来取,可是速度改变不了多少,还是挺慢的。
while($row4 = $db->fetch_array($res4))
{
$order4[$i]=$row4;
$handle = fopen(http://127.0.0.1:8012/getimage.cgi?receiver=".$row4['Email'], "r");
$order4[$i][ 'image']= = fgets($handle);
fclose($handle);
$i++;
}
?>
看了文章,fpassthru 和readfile的速度对照起来是快挺多的,可是我只想把内容读到变量去,而且不显示在页面上,不知怎么处理。
ob_start();