Проблемы с порядком информации при извлечении из базы данных в Zend. - PullRequest
0 голосов
/ 13 марта 2012

Так что у меня проблемы с получением информации, которую я извлекаю из базы данных в соответствии с идентификатором в моей базе данных. Я написал следующую функцию на основе учебника в книге («Pro Zend Framework Techniques», опубликованной Apress), и книга полна опечаток и ошибок, поэтому я надеюсь, что это что-то, что я просто упускаю из виду.

    public function getRecentArticles ($count = 99, $namespace = 'article')
{
    $select = $this->select();
    $select->order = 'id DESC';
    $select->where('namespace = ?', $namespace);
    $select->limit($count);
    $results = $this->fetchAll($select);
    if ($results->count() > 0) {
        $articles = array();
        foreach ($results as $result) {
            $articles[$result->id] = new Rt_Content_Item_Article($result->id);
        }
        return $articles;
    } else {
        return null;
    }
}

Как видите, я пытаюсь расположить статьи в порядке убывания на основе поля идентификатора в базе данных. Будем признательны любому совету. Спасибо.

Ответы [ 2 ]

3 голосов
/ 13 марта 2012
$select = $this->select ()
    ->order ('id DESC')
    ->where ('namespace = ?', $namespace)
    ->limit ($count);
0 голосов
/ 13 марта 2012

order - это функция, аналогичная where и limit.Таким образом, ваша строка заказа должна быть:

$select->order('id DESC');
...