我有一个显示RSS Feeds Items的新闻门户.大约读取了50个来源,效果非常好.
只有一个源我总是得到一个空字符串.W3C的RSS验证器可以读取RSS源.甚至我的维也纳计划也收到数据
我能做什么?
这是我的简单代码:
$link = 'http://blog.bosch-si.com/feed/';
$response = file_get_contents($link);
if($response !== false) {
var_dump($response);
} else {
echo 'Error ';
}
Run Code Online (Sandbox Code Playgroud)
服务该提要的服务器期望设置用户代理。您显然没有在 php.ini 中设置用户代理,也没有在对 的调用中设置它file_get_contents。
您可以通过流上下文设置此特定请求的用户代理:
echo file_get_contents(
'http://blog.bosch-si.com/feed/',
FALSE,
stream_context_create(
array(
'http' => array(
'user_agent' => 'php'
)
)
)
);
Run Code Online (Sandbox Code Playgroud)
或全局任何 http 调用:
ini_set('user_agent', 'php');
echo file_get_contents($link);
Run Code Online (Sandbox Code Playgroud)
两者都会给你想要的结果。
| 归档时间: |
|
| 查看次数: |
370 次 |
| 最近记录: |