情景是我想将4046张图片保存到文件夹中。 (已在php中编码)我想最多需要5个小时。最初,php.ini中的最大执行时间设置为30秒。保存650张图片后,浏览器冻结了。并没有保存任何图像。但是这个过程正在运行。并且也没有错误。任何人都可以告诉我在这种情况下我应该设置的最长执行时间!
P.S。如果我的方法有误,请指导我。 谢谢
答案 0 :(得分:1)
我不确定你的问题是不是由错误的工具造成的 - PHP不适合这么长的任务 如果该图像在某些服务器上更好的用户FTP客户端 如果您有保存在文本文件中的文件列表,请使用cURL下载它们。
答案 1 :(得分:0)
您可以在保存图像的脚本中使用此行延长时间。
ini_set('max_execution_time', 30000);
第二种方法是使用htaccess。
php_value max_execution_time 30000
答案 2 :(得分:0)
我强烈建议您修改脚本以逐步完成工作。所以基本上把工作分成更小的部分,并在两者之间提供休息。基本的逻辑流程就是这样。
<?php
$start = $_GET['start']; //where to start the job at
$end = $start + 250; //queue this and the next 250 positions
for($i=$start;$i<=$end;$i++){
//do the operations need for position $i
}
header("/urlToScript?start=".($end+1)); //refresh page moving to the next 250 jobs
?>
这将完成整个工作的一小部分,并避免与解释器有任何问题。添加任何INI修改以根据需要增加内存使用和时间,你会没事的。