* PDO連線資料
* 1. PDO是PHP與其它資料庫之間的中間層,或是抽象層
* 2. PDO屏蔽了各個資料庫之間的差異,對PHP提供了一個統一的存取介面
* 3. 使用PDO的第一步就是產生一個PDO物件,所有的功能必須要用這個物件來呼叫
* 4. 成功回傳PDO物件,失敗拋出例外
//1.設定參數
* DNS:資料來源
* 基本格式: 資料庫類型:屬性1:值1;屬性2:值2;...
* 類型:如mysqli,oracle等
* 屬性: 主機,預設資料庫,預設字元集,預設連接埠號碼
# * 例如: mysql:host=127.0.0.1;dbname=php;charset=utf8;port=3306;
$dsn = 'mysql:host=localhost; dbname=php; charset=utf8; port=3306';
//資料庫使用者名稱
$userName = 'root';
//資料庫使用者密碼
$password = 'root';
//設定連線屬性
$options = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, //设置错误模式 PDO::ATTR_CASE => PDO::CASE_NATURAL, //数据表字段保持不变 PDO::ATTR_EMULATE_PREPARES => true, //启用PDO模拟 PDO::ATTR_PERSISTENT => true, //启用持久性连接 ];
//使用try-catch()來擷取可能發生的錯誤
try { //调用PDO构造函数实例化PDO类,创建PDO对象 $pdo = new PDO($dsn, $userName, $password, $options); //连接是所有操作的基础,无论你设置的错误模式级别是什么,都会强制使用EXCEPTION异常模式 } catch (PDOException $e) { print 'Connect ERROR!:'.$e->getMessage(); //推荐使用英文提示,以防止页面中文乱码 die(); //连接错误是致命错误,必须停止脚本的执行 }
//中斷PDO連線
$pdo = null;
//銷毀PDO物件
unset($pdo);
//更多的時候,可以使用簡寫:
$pdo = new PDO('mysql:dbname=php;','root', 'root'); //其它参数取默认值