PDO::FETCH_*与铸件之间的差异


Difference between PDO::FETCH_* and the casting

我想知道PHP PDO中返回查询的强制转换变量和常量PDO::FETCH_*之间的真正区别

示例:

$row = $stmt->fetch(PDO::FETCH_OBJ);

$row = (object) $stmt->fetch();

没有显著差异,但很明显,第一行做的工作较少:它获取数据并填充对象,而第二行获取数据,填充数组,然后将数组强制转换为对象。

你也可以看看http://us.php.net/manual/en/pdostatement.fetchobject.php

方法stmt->fetch();通过列名和零索引数组返回一个索引数组(PDO::FETCH_BOTH),$stmt->fetch(PDO::FETCH_OBJ);方法返回匿名对象,其属性名与结果集中返回的column名称相对应。