0

我正在做一个项目,该项目的一部分要求我将一些 sql 结果转换为一个类对象数组。

为了方便起见,我更喜欢将我的数组键设置为 sql 行的主键,这样我就可以快速访问它们。

我现在这样做的方式是将每个对象重新映射到一个新数组,然后手动将键设置为 $object->id。有什么方法可以让 pdo 在获取初始数组时执行此操作,所以我不需要做我正在做的事情。

4

1 回答 1

1

好吧,你可以这样做:

array_map(
    'reset', 
    $stmt->fetchAll(
        PDO::FETCH_GROUP|PDO::FETCH_CLASS, 
        'className'
    )
);

但这可能并不比你现在所做的更漂亮。另请参阅此处此处

或者可能涉及的东西PDO::FETCH_KEY_PAIR

于 2013-01-25T12:57:05.920 回答