无法在codeigniter中打开流错误

时间:2014-02-24 10:25:01

标签: codeigniter

我有一个锚

echo anchor('site/getFeed/'.urlencode("http://feeds.reuters.com/news/artsculture"),'Tehnology')

当我点击它时,会将我重定向到控制器中的getFeed函数:

function getFeed($feed_url){
   $content = file_get_contents($feed_url);
   $x = new SimpleXmlElement($content);}

但它给了我这个错误:file_get_contents(http :):无法打开流:无效的参数 和致命错误:未捕获异常'Exception',消息'String无法解析为XML。  如果我将链接(http://feeds.reuters.com/news/artsculture)直接放在file_get_contents('http://feeds.reuters.com/news/artsculture')中,它可以工作,但我不想这样做,因为我有3个不同链接的锚点。

1 个答案:

答案 0 :(得分:0)

在传递网址之前,最好对网址进行编码。

echo anchor('site/getFeed/'.urlencode("http://feeds.reuters.com/news/artsculture"),'Tehnology');

或者:

echo anchor('site/getFeed?url='.urlencode("http://feeds.reuters.com/news/artsculture"),'Tehnology');

在控制器中

function getFeed()
{
   $feed_url = $this->inout->get("url");
   $content = file_get_contents($feed_url);
   $x = new SimpleXmlElement($content);
}