PHP类在调用时不返回数组

时间:2012-10-23 12:29:35

标签: php arrays class function

我有一个PHP类,它应该将数组返回到实例化对象的位置。我试图弄清楚问题是什么,但我似乎无法看到它。 任何人都可以看到我在这里出错或指向正确的方向吗? 感谢

这是类(在名为'feeds.php。的文件中)

class updateFeed {
public function index() {
        $db = JFactory::getDBO();
        $query = "SELECT * FROM tweets";
        $db->setQuery($query);
        $result = $db->loadObject()
        if(strtotime($result->date_added) <= time() - 3200) {
            $this->updateTweets();
        }

        $query = "SELECT * FROM tweets ORDER BY tweet_date DESC LIMIT 0, 3";
        $db->setQuery($query);
        $results = $db->loadObjectList();

        $tweet_db = array();
        foreach($results as $result) {
            $tweet_db[] = array(
                'title'   =>   $result->title,
                'text'    =>   $result->text,
                'tweet_date'   =>   $result->tweet_date
            );
        }   
        return $tweet_db;

    }

这里是实例化对象的位置(在index.php文件中):

include('feeds.php');
$tweet_dbs = new updateFeed;
print_r($tweet_dbs);

索引文件中的print_r显示'updateFeed Object()'。 提前谢谢。

3 个答案:

答案 0 :(得分:2)

你错了。你不要调用index()方法。 试试这个:

include('feeds.php');

// Create class instance
$instance = new updateFeed;

// Call your class instance's method
$tweet_dbs = $instance->index();

// Check result and have fun
print_r($tweet_dbs);

答案 1 :(得分:0)

include('feeds.php');
$tweet_dbs = new updateFeed;
$tweets = $tweet_dbs->index();
print_r($tweets);

您错过了调用index()函数..

答案 2 :(得分:0)

你需要使用该类的对象来调用该方法。

替换

print_r($tweet_dbs) 

print_r($tweet_dbs->index())