我使用下面的函数获取从一系列重定向的URL最终函数循环...停止PHP,而与条件
https://stackoverflow.com/a/4102293/1183476
它工作的时间伟大的99.8%。我无法真正查明异常情况,但我认为它与另一端的服务器有关,每次访问都会生成一个新的随机URL。因此,这个脚本陷入了无限循环。
复制的问题与更换get_redirect_url
功能...
function get_redirect_url($url){
return $url.'x';
}
问题
我怎样才能设置一个时间或迭代限制?
我觉得我已经尝试了一切。我试图在while循环中寻找下一个URL的基于时间的条件,但它不工作,我不知道为什么。像这样...
function get_all_redirects($url){
$redirects = array();
$start = time();
while ($newurl = get_redirect_url($url) && time()-$start < 10){
if (in_array($newurl, $redirects)){
break;
}
$redirects[] = $newurl;
$url = $newurl;
}
return $redirects;
}
我也试图重复计数这样......
function get_all_redirects($url){
$redirects = array();
$i = 0;
while ($newurl = get_redirect_url($url) && $i < 10){
if (in_array($newurl, $redirects)){
break;
}
$redirects[] = $newurl;
$url = $newurl;
$i++;
}
return $redirects;
}
以上事例只是众多的2失败的尝试。我已经准备好寻求帮助。提前致谢。
你的计数interations代码应该工作。试试'echo $ i。'
';'看看为什么它没有完成。 – Ranty 2013-03-13 08:53:04