## 連接管理
*PDO::__construct ( string $dsn [, string $username [, string $password [, array $options ]]] )*
連接是通過創建 PDO 基類的實例而建立的。不管使用哪種驅動程序,都是用 PDO 類名。構造函數接收用于指定數據庫源(所謂的 DSN)以及可能還包括用戶名和密碼(如果有的話)的參數。
PDO 連接數據庫有三種方式:
**通過參數形式連接(推薦)**
$dsn = "mysql:host=localhost;dbname=xxx";
$username = "xxx";
$pwd = "xxx";
$pdo = new PDO($dsn,$username,$pwd);
PDO 構造函數還有一個 $options 參數,它是一個數組,用于配置運行中的數據庫,如是否開啟自動提交、設置結果集的返回方式等。
**通過 uri 連接**
首先建立一個文件,保存數據源,文件內容形如:mysql:host=localhost;dbname=xxx。然后在程序中引入該文件。
$dsn = "uri:file://保存數據源配置的文件路徑";
$username = "xxx";
$pwd = "xxx";
$pdo = new PDO($dsn,$username,$pwd);
**通過配置文件連接**
在 php.ini 中的任意一個位置添加數據源的配置:
pdo.dsn.test=”mysql:host=localhost;dbname=xxx”;
test 是自定義的數據源名稱。添加完成后重啟服務器,在程序中引入該數據源。
$dsn = "test";
$username = "xxx";
$pwd = "xxx";
$pdo = new PDO($dsn,$username,$pwd);
**PDO 對象常用的方法:**
* PDO::beginTransaction — 啟動一個事務
* PDO::commit — 提交一個事務
* PDO::__construct — 創建一個表示數據庫連接的 PDO 實例
* PDO::errorCode — 獲取跟數據庫句柄上一次操作相關的 SQLSTATE
* PDO::errorInfo — 獲取跟數據庫句柄上一次操作相關的錯誤信息
* PDO::exec — 執行一條 SQL 語句,并返回受影響的行數
* PDO::getAttribute — 取回一個數據庫連接的屬性
* PDO::getAvailableDrivers — 返回一個可用驅動的數組
* PDO::inTransaction — 檢查是否在一個事務內
* PDO::lastInsertId — 返回最后插入行的ID或序列值
* PDO::prepare — 預處理一條SQL語句,返回PDOStatement對象
* PDO::query — 執行一條SQL語句,返回PDOStatement對象,用于保存結果集
* PDO::quote — 返回一個添加引號的字符串,用于query語句
* PDO::rollBack — 回滾一個事務
* PDO::setAttribute — 設置屬性
參考鏈接: [PDO 對象](http://php.net/manual/zh/class.pdo.php)
- 基本語法
- PHP標記
- 指令分隔符
- 從HTML中分離
- 注釋
- 數據類型
- 布爾值
- 整數
- 浮點數
- 字符串
- 數組
- 對象
- 資源
- 空值
- 變量
- 基礎
- 預定義變量
- 變量范圍
- 可變變量
- 常量
- 常量語法
- 魔術常量
- 運算符
- 算術運算符
- 賦值運算符
- 位運算符
- 比較運算符
- 遞增與遞減運算符
- 邏輯運算符
- 字符串運算符
- 數組運算符
- 類型運算符
- 流程控制
- if條件結構
- switch條件結構
- while循環結構
- do-while循環結構
- for循環結構
- foreach循環結構
- 包含文件
- 函數
- 自定義函數
- 可變函數
- 匿名函數
- 遞歸函數
- 類與對象
- 基本概念
- 屬性
- 方法
- 類常量
- 構造函數和析構函數
- 訪問控制
- 繼承
- 抽象類
- 接口
- Trait
- 重載
- 對象遍歷
- 魔術方法
- Final關鍵字
- 命名空間
- 自動加載
- 錯誤處理
- 錯誤顯示
- 錯誤日志
- 錯誤報告
- 自定義錯誤處理
- 異常處理
- 異常處理機制
- 擴展異常處理類
- 字符操作
- 數組操作
- 時間操作
- 表單操作
- GET提交
- POST提交
- 文件上傳
- 會話控制
- COOKIE操作
- SESSION操作
- 文件操作
- 文件屬性
- 讀取文件
- 寫入文件
- 文件管理
- 文件鎖
- 目錄處理
- 路徑處理
- 網絡操作
- HTTP協議
- Socket操作
- CURL操作
- PDO操作
- 介紹
- 連接管理
- 預處理語句
- 事務處理
- 錯誤處理
- 圖像操作
- 正則表達式
- 標準推薦
- 包管理器
- 設計模式
- 常用算法
- 安全防御
- XSS防御
- CSRF防御