我正在使用Simple HTML DOM通过网址解析HTML网页元素。这是我在网站上提取一些文本的代码。
while($from_page <= $to_page){
$html = file_get_html('http://derp.com/page/'.$from_page.'');
$protip[] = $html->find('div.class',0)->children(2)->plaintext;
var_dump($protip);
$from_page++;
}
这段代码的问题是当我在$to_page
中输入一个较大的数字时,php将返回一个超出执行时间的错误,因为它无休止地循环。
我可以通过将URL作为参数传递来使用AJAX调用来避免这种情况吗?如果是这样,我找不到任何方法来实现它,因为在我的情况下,我正在使用外部函数来解析网址。
答案 0 :(得分:2)
set_time_limit(0)
,0表示无限制。
您也可以编辑php.ini max_execution_time
或使用ini_set
进行修改。
为防止内存泄漏问题,建议在$from_page++;
unset($html);
答案 1 :(得分:1)
您可以增加PHP执行最长时间
ini_set('max_execution_time', 300);
不了解有关AJAX的部分,但似乎没有必要。