PHP:file_get_contents&卷曲不工作(但终端卷曲呢)

时间:2012-12-01 04:42:04

标签: php curl file-get-contents

我正在尝试从这个链接中卷曲json:http://web-app.usc.edu/ws/soc/api/departments/20131

我试过了:

的file_get_contents:

$json = file_get_contents("http://web-app.usc.edu/ws/soc/api/departments/20131");

卷曲:

$ch = curl_init('http://web-app.usc.edu/ws/soc/api/departments/20131');
$response = curl_exec($ch);

但是file_get_contents“无法打开流”并且curl似乎挂起了。有趣的是,在终端中卷曲网址效果很好。

出了什么问题?

1 个答案:

答案 0 :(得分:2)

Php设置可以(并且应该)禁止在url上使用调用fopen的file_get_contents。请参阅http://www.php.net/manual/en/filesystem.configuration.php

Curl是获取文件的正确方法。我认为您的问题可能是缺少卷曲选项。尝试将CURLOPT_RETURNTRANSFER设置为true。如果不这样做,则直接输出转移,而不是调用curl_exec()的返回值。

$ch = curl_init('http://web-app.usc.edu/ws/soc/api/departments/20131');
curl_setopt ( $ch , CURLOPT_RETURNTRANSFER , true );
$response = curl_exec($ch);

另一个RTM链接:http://www.php.net/manual/en/function.curl-setopt.php