我想使用 php 函数 file_get_contents
在屏幕上列出 10.000 个页面以获取数据库的信息。
这一直有效到大约 500 页,然后脚本停止运行(页面已加载)并且不显示任何错误。
<?php
for ($nr=1; $nr<=10000; $nr++){
$url = "http://site.com/u$nr";
$string = file_get_contents($url);
echo '<textarea>'.$string.'</textarea>';
}
?>
@编辑
我想获取此信息以便我的计算机通过 Javascript 进行操作,我认为这为使用 PHP 操作 HTML 提供了很多工作。 在数据库中记录这些页面是个好主意。
最佳答案
我建议在循环内设置你的time_limit。设置时间限制将“延长”超时给定的时间量;
<?php
for ($nr=1; $nr<=10000; $nr++){
$url = "http://site.com/u$nr";
$string = file_get_contents($url);
echo '<textarea>'.$string.'</textarea>';
// extend the time-limit with this amount of time,
// the amount of time this request is allowed to take
set_time_limit(5);
}
?>
这样您就不必计算 10.000 条记录的“总”时间限制,并且不允许单个请求花费(例如)1 小时来完成
[更新] OP 发布的新信息表明他想使用 javascript 处理输入。因此,更好的解决方案是使用 jQuery 一次获取所有页面 1,处理信息并将结果提交到数据库,使用 Ajax post 和服务器端将其保存到数据库
关于php - 文件获取内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14641775/