php - pdo 获取对象?

标签 php pdo

有没有更好的方法来返回数据库结果的对象?

我知道“return $statement->fetchall(PDO::FETCH_CLASS, 'modelClassName');”但它只适用于 fetchall 函数?

class modelArea extends Model {

    public $areaID;
    public $postcode;

    public static function find($condition, $parameters) {
        $query = "SELECT * FROM area WHERE " . $condition;

        $statement = self::getDb()->prepare($query);
        if (!$statement->execute($parameters))
            return false;

        $query = $statement->fetch(PDO::FETCH_ASSOC);

        $a = new modelArea();

        $a->areaID = $query['areaID'];
        $a->postcode = $query['postcode'];

        return $a;
    }
}

最佳答案

PDOStatement::fetchObject方法做你想做的事。

你可以像这样使用它:

$a = $statement->fetchObject('modelArea');

这将导致 $a 成为类 modelArea 的对象,等同于您提供的代码。

关于php - pdo 获取对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5887491/

相关文章:

php - 计算评级系统的平均值

php - 哪个是 Laravel 5 最好的购物车?

php - 具有多个条件的 MySQL SELECT

php - PDO 结果到数组

php - javascript验证数据库中的表单值

javascript - 如何从 mxGrpah 图中获取 XML?

php - 使用 javascript 更改背景颜色

php - pdo 中的 DSN 设置不起作用

mysql - 使用 PDO 驱动程序(MySQL + PHP)检测错误/无效/非法查询

php - 使用PDO打印两次MYSQL查询结果