解析错误,在包含SimplePie RSS Script时期望“T_FUNCTION”

时间:2012-05-25 22:23:51

标签: php rss simplepie

当我包含SimplePie RSS脚本(simplepie.inc)时,我已将问题缩小到了界限。我不确定为什么它会引发这个错误,但我认为StackOverflow可能比我迄今为止通过Google找到的更多洞察力。

以下是我用来获取SimplePie Feed结果的简单类的代码:

<?php

// Include SimplePie
require_once("simplepie.inc");

class Channel
{
    public $feed = new SimplePie();

    private $feedURI = "";

    function __construct($URI)
    {
        $this->feedURI = $URI;

        $this->feed->set_feed_url($this->feedURI);
        $this->feed->init();
        $this->feed->handle_content_type();
    }
}

?>

如果您对我有任何见解,那将是非常棒的!谢谢!

2 个答案:

答案 0 :(得分:3)

定义属性时无法实例化类。只有常量值才是有效的语法。而是在构造函数中实例化$feed

public $feed;

public function __construct($URI)
{
    $this->feed = new SimplePie();
    // ...
}

来自the manual

  

此声明可能包括初始化,但此初始化必须是常量值 - 也就是说,它必须能够在编译时进行评估,并且必须不依赖于运行时信息才能进行评估。

答案 1 :(得分:2)

public $feed = new SimplePie();

您不能在属性声明中使用函数或类赋值。定义为NULL,并将属性值设置为新的SimplePi