Home | 簡體中文 | 繁體中文 | 雜文 | 打賞(Donations) | ITEYE 博客 | OSChina 博客 | Facebook | Linkedin | 知乎專欄 | Search | Email

3.14. PHP Data Objects (PDO)

3.14.1. $driver_options

持久連結

PDO::ATTR_PERSISTENT => true,
		

壓縮傳輸,適合遠程連接資料庫,壓縮查詢結果後返回給客戶端

PDO::MYSQL_ATTR_COMPRESS => true
		

初始化命令,就是連結資料庫首先會運行的命令

PDO::MYSQL_ATTR_INIT_COMMAND => "set names ".$cfg['charset'],
		

3.14.2. setAttribute

$db = new MyPDO();
$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
		

3.14.3. getAttribute

 $status = $pdo->getAttribute(PDO::ATTR_SERVER_INFO);

 if($status == 'MySQL server has gone away')
 {
     /* 進行PDO連接 */
 }		
		

3.14.4. PDO

3.14.4.1. lastInsertId

			
$dbh->lastInsertId(); 
			
			

3.14.5. The PDOStatement class

3.14.5.1. fetch 返回數組

$stmt->fetch(PDO::FETCH_ASSOC);
			

3.14.5.2. 返回對象

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

3.14.6. FAQ

3.14.6.1. 調試 PDO 程序

使用pdo你會經常發現無法執行,卻找不到問題,可以通過下面設置開啟調試模式

			
$dbo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );		
			
			

PDOStatement 調試

			
echo $sth->queryString;
echo $sth->debugDumpParams();
			
			

3.14.7.