mysql - 表模型的问题

标签 mysql zend-framework pdo model

我最近遇到了表模型的问题,我无法真正解释为什么会发生这种情况。我想从表中选择所有内容并按降序返回。但是当我尝试显示它时,什么也没有显示:

代码:

<?php

//Will be used at a later date

namespace Blog\Model\Table;

use Zend\Db\TableGateway\TableGateway;

class Blog extends TableGateway
{
    public function __construct($adapter)
    {
        parent::__construct('posts', $adapter);
    }

    public function displayPosts()
    {
        $adapter = $this->getAdapter();
        $result = $adapter->query('SELECT * FROM `posts` ORDER BY `date_added` DESC');
        return $result;
    }
}

结果:

但是当我添加 $id 参数时,它会显示数据:

代码:

<?php

//Will be used at a later date

namespace Blog\Model\Table;

use Zend\Db\TableGateway\TableGateway;

class Blog extends TableGateway
{
    public function __construct($adapter)
    {
        parent::__construct('posts', $adapter);
    }

    public function displayPosts($id = 6)
    {
        $adapter = $this->getAdapter();
        $result = $adapter->query('SELECT * FROM `posts` WHERE `post_id` = ?', array($id));
        return $result;
    }
}

结果:

奇怪的是,它在有论证的情况下起作用,而不是在没有任何想法的情况下起作用?

最佳答案

您需要通过 post_id 订购

public function displayPosts()
{
    $adapter = $this->getAdapter();
    $result = $adapter->query('SELECT * FROM `posts`')->order(array('post_id' => 'DESC'));

    return $result;
}

关于mysql - 表模型的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27730722/

相关文章:

php - 如何获取客户的时区?

php - 为什么我的 table 变成空的?

mysql - 将两个 SQL 查询的值相加以创建第三个值

zend-framework - 更改 Zend Framework 中的布局扩展

mysql - 在 Rails 中访问 INFORMATION_SCHEMA

php - zend_db 适配器不在/zend_db_expr

PHP PDO 和 MySQLi

PHP:即使发现异常如何执行try block ?

MySQL 不为外键创建索引

mysql - 我的表在性能方面的最佳结构 :