MySQL PDO - 设置默认提取模式?

Nat*_*ael 4 php mysql oop pdo

所以今天,我终于从标准的PHP MySQL函数过渡到PDO了.我注意到在将数据作为对象提取时,我们必须运行类似于以下内容的行:

$STH = $DBH->query('SELECT name, addr, city from folks');
$STH->setFetchMode(PDO::FETCH_OBJ);

$result = $STH->fetch();
Run Code Online (Sandbox Code Playgroud)

我的问题是关于第2行.有没有办法将其设置为默认行为,这样我们不需要每次希望运行查询时都设置获取模式?这对我来说似乎很烦人.当然没有必要这样做?

小智 7

您可以为PDO对象设置默认提取模式:

$DBH->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
Run Code Online (Sandbox Code Playgroud)

当然,这是在您初始化$ DBH(PDO)对象后立即执行的操作.

(有关此的详细文档,请参阅http://www.php.net/manual/de/pdo.setattribute.php)