MySQL PDO - Setting Default Fetch Mode?

2020-07-18 03:52发布

问题:

So today, I'm finally making the transition from standard PHP MySQL functions to PDO. I noticed when fetching data as an object, we must run a line similar to the following:

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

$result = $STH->fetch();

My question is regarding line 2. Is there a way to set this as the default behavior so that we don't need to set the fetch mode every single time we wish to run a query? This seems pretty annoying to me. Surely it's not necessary to do this?

回答1:

You can set the default fetch mode for the PDO object:

$DBH->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);

This, of course, you do as soon as you've initialized your $DBH (PDO) object.

(For detailed documentation on this, see http://www.php.net/manual/de/pdo.setattribute.php)



标签: php mysql oop pdo