我收到错误
" 503服务暂时不可用"
用我的电话
$url = "https://www.okex.com/api/v1/ticker.do?symbol=ltc_btc";
$page = json_decode(file_get_contents($url),true);
var_dump($page);
PHP file_get_contents
功能但是当我直接将URL写入浏览器时我可以看到该页面,它们是否只阻止了file_get_contents函数或者它是如何工作的?因为如果他们阻止了我的ip,我也无法使用我的浏览器访问该网站?
这是对APi服务器的调用,它让我回到了json。
答案 0 :(得分:4)
您的网页更有可能是重定向,file_get_contents()
无法处理,但浏览器可以。
所以解决方案是使用curl
代替,它能够处理这种情况(例如使用CURLOPT_FOLLOWLOCATION选项)。
另见这个问题:
这是一个片段,应该作为一个简单的替代品(基于官方文档中的示例):
function curl_get_file_contents($URL)
{
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($c, CURLOPT_URL, $URL);
$contents = curl_exec($c);
curl_close($c);
if ($contents) return $contents;
else return FALSE;
}