这是交易......我通过foreach循环运行了一堆URL。每个URL都将通过fil_get_contents(),但有些会返回500个错误(预期),我想跳过/忽略返回的任何500个错误,但仍然会为有效响应提取数据。我有这个设置,但仍然在这500个响应中获得未定义索引的错误。
foreach($a['response']['groups']['users']['name'] as $key => $values)
{
$id = $values['uname']['id'];
$url = "http://thisurlimusing.com"."$id";
$context = stream_context_create(array('http' => array('ignore_errors' => true),));
$string = file_get_contents($url,false,$context);
$array = json_decode($string, true);
print_r($array['specific']);
}
答案 0 :(得分:0)
您的问题是由ignore_errors
(http)设置为true
引起的。在这种情况下,file_get_contents
将返回错误响应文本。
以下几行有效:
$string = file_get_contents($url,false);
if ($string !== FALSE) {
$array = json_decode($string, true);
}