dtmjqyfz21793
2012-05-25 22:23
浏览 26
已采纳

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

I've narrowed down my issue to the line when I include the SimplePie RSS script (simplepie.inc). I'm not sure why exactly it's throwing this error, but I thought StackOverflow might have more insight than I have been able to find via Google thus far.

Here's the code to the simple class that I'm using to get the SimplePie feed results:

<?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();
    }
}

?>

If you have any insight at all for me that would be awesome! Thank you!

图片转代码服务由CSDN问答提供 功能建议

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

这是简单类的代码 我正在使用它来获取SimplePie提要结果:

 &lt;?php 
 
 //包含SimplePie 
require_once(“simplepie.inc”); 
  
class Channel 
 {
 public $ feed = new SimplePie(); 
 
 private $ feedURI =“”; 
 
 function __construct($ URI)
 {
 $ this-&gt; feedURI =  $ URI; 
 
 $ this-&gt; feed-&gt; set_feed_url($ this-&gt; feedURI); 
 $ this-&gt; feed-&gt; init(); 
 $ this-&gt; feed-  &gt; handle_content_type(); 
} 
} 
 
?&gt; 
   
 
 

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • dongzhiyan5693 2012-05-25 22:26
    已采纳

    You can't instantiate a class when defining a property. Only constant values are valid syntax. Instantiate $feed inside the constructor instead:

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

    From the manual:

    This declaration may include an initialization, but this initialization must be a constant value--that is, it must be able to be evaluated at compile time and must not depend on run-time information in order to be evaluated.

    点赞 打赏 评论
  • doubinduo3364 2012-05-25 22:27
    public $feed = new SimplePie();
    

    You can't use a function or class assignment in the property declaration. Define as NULL, and set the property value as new SimplePi

    点赞 打赏 评论

相关推荐 更多相似问题