7

我有一个 PHP 类 ( POJO_FOO),它映射到一个表 ( TABLE_FOO)。

例如,一行等于该类的一个对象。

现在我正在编写一个管理器,它返回与特定查询匹配的此类对象的数组。使用PDO,我怎样才能返回对象数组?

当我做 simple时,它​​返回关联数组( => )fetchAll的数组(代表结果数)。有没有一个选项可以让我以对象数组的形式得到结果?columnvaluefetchALL

4

1 回答 1

8

您可以使用 PDO::FETCH_CLASS 为您的课程添加数据:

return $pdo->query('SELECT * FROM tablefoo')->fetchAll(PDO::FETCH_CLASS|PDO::FETCH_PROPS_LATE,'POJO_FOO');

使用 PDO::FETCH_CLASS|PDO::FETCH_PROPS_LATE 也很有用,因为它使对象的构造更加一致。习惯性地,您的构造函数在一切之前被调用。如果您不使用 FETCH_PROPS_LATE,它将在您的属性水合后调用。

于 2012-08-28T08:21:18.593 回答