我正在尝试在PDO中将PDO :: MysqL_ATTR_FOUND_ROWS属性设置为true,但我似乎无法设置它.我使用PHP 5.4.16和MysqL 5.5.PDO和pdo_MysqL都出现在我的PHPinfo()中.
以下是我尝试将其设置为true的方法.
public function __construct () {
$dsn = 'MysqL:host=' . DB_HOST . ';dbname=' . DB_NAME . ';charset=utf8';
$this->_db = new PDO($dsn,DB_USER,DB_PASS);
// The following setAttribute() returns FALSE.
$this->_db->setAttribute(PDO::MysqL_ATTR_FOUND_ROWS, TRUE);
}
我试图寻找我能想到的每一个可能的设置.我还缺少什么?
解决方法:
It seems那个PDO :: MysqL_ATTR_FOUND_ROWS是一个MysqL连接选项.因此,它仅作为PDO连接选项工作.所以,这样设置
$opt = array(
PDO::MysqL_ATTR_FOUND_ROWS => TRUE,
// you may wish to set other options as well
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
);
$this->_db = new PDO($dsn,DB_USER,DB_PASS,$opt);