php-mysql脚本自动停止
我这里有一个小代码片段:php-mysql脚本自动停止,php,mysql,Php,Mysql,我这里有一个小代码片段: <?php //logic to connect to database and rest of the settings. // ...................// $res = mysql_query("select * from account"); //returns 1200 records while($row = mysql_fetch_array($res)){ //some of the
<?php
//logic to connect to database and rest of the settings.
// ...................//
$res = mysql_query("select * from account"); //returns 1200 records
while($row = mysql_fetch_array($res)){
//some of the logical operations performed here.
if(condition){ //condition is not a variable. its result to be evaluated
updateDatabase($data1, $data2);
}else{
updateDatabase($data1, 0);
}
}
?>
<?php
function updateDatabase($data1, $data2){
//some logical operations
//updating database.
//for testing an echo statement whether success/fail
}
?>
由于这段代码检索了数千条记录,需要对这些记录和操作执行,所以在每种情况下都需要更新数据库。但是如果我运行这个php
文件,那么它在达到大约1000条记录后就会停止执行
我不知道为什么会这样做,因为我是php
的初学者有人能帮我解决这个问题吗?尝试增加
php.ini
文件中的最大执行时间。根据您的php
配置,可能脚本运行太长。php错误日志中没有错误?从while
循环中删除所有内容。添加一个计数器。现在,迭代了多少次?我也这么做了。但是计数器停止,而不是固定的数字。有时它会在9001050990处停止…错误日志中一定有什么内容。请发布相关摘录。我在哪里可以找到错误日志?我是php
的新手,错误日志的位置在您的日志中定义。如有疑问,echo ini_get('error_log')代码>将告诉您它在哪里。当前值为30。我应该怎么做?这意味着,如果服务器调用的脚本在此之前尚未完成,则它们将在30秒后停止。增加到60,然后再试一次。如果仍然停止并且没有完成,您可以进一步增加。如果是在开发机器上,如果您愿意,您可以增加到300或更多,而无需问题感谢您的回复。现在它起作用了。有没有更好的解决方案来完成如此长的任务,而不是制作一个php
文件并运行它?优化您的代码或在后台运行作业。您可以执行一个php命令行脚本来执行该任务,默认情况下没有超时,并且可以降低优先级