我正在使用file_get_contents函数来获取xml api,当我使用foreach循环来判断这个数组时,它运行正常,但大部分时间我的php foreach循环不是每次都打破并且显示不同类型的消息。有时它会给出“function.file-get-contents”:无法打开流:HTTP请求失败“有时它会给出”超过30秒的最大时间。
请帮帮我。我的代码是
$data = $apiobj->search_slides($query,$per_page,$page);
$count = count($data);
$i=0;
foreach ($data as $key){
$title = $key['TITLE'];
$title2 = substr($title, 0, 35);
echo '<td valign="top">
<div id="slide_thum_des"><strong>Views :</strong> '.$info['VIEWS'].'<br />
<a href="'.$key['DOWNLOADURL'].'">'.$title2.'....</a></div>
</td>';
$i++;
if($i % 6 == 0) {
echo '</tr><tr>';
}
}
$data = $apiobj->search_slides($query,$per_page,$page);
是通过在另一个php代码中解析xml文件来提供数组的主要函数。
答案 0 :(得分:0)
你确定它在循环中断了吗?
听起来像初始的http请求失败了(因为事情的声音而超时)。
你应该尝试http请求,看看它是否有效。
由于您使用的是file_get_contents函数,因此首先应该禁止错误
$content = @file_get_content($url);
然后检查它是否有效
if($content == FALSE){ //error code goes here }