使用 PDO::FETCH_CLASS 从数据库设置自己的参数


Setting Own Parameters from Database using PDO::FETCH_CLASS

我创建了一个类用户,它反映了用户表中的行。有一种填充方法,其中我根据主键从数据库中获取值并尝试将其存储在 self 对象中。我可以通过获取所有变量并为每个字段逐个设置它们来做到这一点。有没有办法使用 PDO::FETCH_CLASS 或任何其他简单的方法?

如果我尝试使用 $this = $stmt->fetch( PDO::FETCH_CLASS ) 存储它,它会给出致命错误:无法在第 51 行错误中的/var/www/html/php/classes.php 中重新分配$this。

我不想使用ORM风格的工具,而是想自己开发类。

您是否尝试过像list($this->a,$this->b,$this->c)= array(...))之类的东西,其中数组(可能)是获取的结果?因为不能分配变量$this所以只能引用它的字段和方法。

另一种解决方案是实现 ArrayAccess 接口并将数据存储在底层数组中。