我有一个从数据库中提取记录的简单代码。具体问题在于:
while ($row = $results->fetch_array(MYSQLI_ASSOC))
{
$data[$count] = $row;
$count++;
}
所以,我做了一个简单的 SELECT
我期望从中得到10万个结果。如果结果超过~50k,则 while
loop正在向上移动,甚至一点都没有 var_dump
.
但如果我 SELECT
一排的结果就出现了。
我无法访问服务器配置。最长执行时间为60秒。
谢谢您。
2条答案
按热度按时间a64a0gku1#
你可以改变主意
php.ini
也可以从php代码中配置值。将此添加为函数的第一行它将改变世界
max_execution_time
无限价值nwsw7zdq2#
原来是个
memory_limit
问题,仅分配256M
. 将限制设置为2048M
与ini_set('memory_limit', '2048M')
解决了问题。请记住
set_time_limit(0)
在php中被认为是不好的做法,因为php解释器将无休止地运行[source]如果脚本需要此命令,则需要对其进行优化。