PHP 的最大执行时间


maximum execution time for PHP

我正在努力从网站下载图像,出现错误,指出"Maximum execution time of 30 seconds exceeded"并且图像下载已停止。我尝试添加以下我认为可以解决问题的代码行:

ini_set('max_execution_time', 0); //zero means forever I think, I also tried 200 or 300 seconds

它没有给我错误,但执行停止了(我的意思是图像停止下载)。

如何使执行时间延长到 300 秒?有什么解决方案吗?

提前感谢!

编辑:

function save_image($inPath,$outPath)
    { 
$in=    fopen($inPath, "rb");
$out=   fopen($outPath, "wb");
while ($chunk = fread($in,8192))
{
    fwrite($out, $chunk, 8192);
}
fclose($in);
fclose($out);
    }

和一个方法调用:

foreach($li->find('a[class=thumbnail]') as $img) 
                    {
                        foreach($img->find('img') as $e)
                        {   
                            $image++;           
                           echo "<img src='"" . $e->src . "'"/>" . "<br>";
                           save_image($e->src, 'thumbs/image'. $image .'.JPG');
                        }
                    }   

这就是我正在使用的代码

或者

,您可以更改 php.ini 文件中的max_execution_time,使其与您需要的相匹配。

set_time_limit(0);

确保它位于文档顶部,紧随<?php之后

您应该改用set_time_limit(0) (php.net)。