我使用flickr API + PHP创建了一个应用程序。不知怎的,我的代码在我的本地机器上运行,但是当我将它部署到服务器上时,它会中断。
我得到的警告是:
警告:在第124行/home/u189255383/public_html/imageGallery/imageProcess.php中为foreach()提供的参数无效。
在我的代码中,该部分是foreach($resultObj['photos']['photo'] as $photo)
只是一个代码,用于处理从请求flickr API获取结果的函数传入的结果。
我发现它只是因为$resultObj
中没有任何内容而表示无效,这就是为什么它是无效的参数,但我不知道为什么它是空的。
$url = $request . $method . $sign . $apiKey . $sign . 'text=' . urlencode($input) . $sign . $per_page . $sign . $page . $i . $sign . $format;
$result = file_get_contents($url);
$resultObj = unserialize($result);
这基本上是我在返回结果之前所做的。我试图查看$result
内是否有任何内容,但结果显示$result
处的内容已经为空,这意味着file_get_contents($url);
函数未被执行。
答案 0 :(得分:0)
尝试使用curl。您应该检查远程服务器上是否安装了curl:
$url = $request . $method . $sign . $apiKey . $sign . 'text=' . urlencode($input) . $sign . $per_page . $sign . $page . $i . $sign . $format;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
$resultObj = unserialize($result);