从超时停止无限循环

时间:2013-03-16 22:06:40

标签: php file-get-contents

基本上,我有一个使用file_get_contents进行无限循环的脚本,它基本上只是运行函数然后递增传递给$_GET url的file_get_contents变量,问题显然是它为“太多的重定向”引发了一个错误,是他们可以在Cron Job上做到这一点的方式还是一种没有错误的方式,这是我当前的代码

$id = $_GET['id'];
$next_id = $id + 1;
$url = "http://www.website.com/profile/$id.json";
$json = file_get_contents($url);
$result = json_decode($json, true);

$headers = get_headers($url);
if($headers[0] !== "HTTP/1.1 404 Not Found") {
  $query = mysql_query("query here");
  if($query) {
       echo '<script type="text/javascript">
       <!-- window.location = "import.php?id='.$next_id.'" //-->
       </script>';
  } else {
       echo '<script type="text/javascript">
       <!-- window.location = "import.php?id='.$id.'" //-->
       </script>';
  }
}

还有其他方法或更有效的方法吗?在使用我的重定向之前,我尝试使用sleep(5)这样的方法,但似乎仍然在继续这样做

1 个答案:

答案 0 :(得分:1)

尝试在JavaScript中重定向之前添加暂停:

echo '<script type="text/javascript">
<!-- window.setTimeout("window.location = \"import.php?id='.$next_id.'\"", 5000); //-->
</script>';