PDO 基礎

爲何要使用PDO

  PDO是PHP5新加入的一個重大功能,咱們的數據庫服務器爲MySQL,全部的程序代碼的數據庫操做全是一mysql()或者mysqli()函數來操做,當咱們的數據庫 須要更換時好比換成,SQLSERVER、PostgreSQL、MS 等,咱們不可能去修改全部的程序代碼!因此就要用到PDO,PDO很好的幫咱們解決了這個問題,使用PDO操做很是方便,只須要修改數據源格式,和加載相應的驅動文件到PHP.ini便可;php

 

PDO的特色

  1)編碼的一致性
       因爲PHP可用的各類數據庫擴展是由不一樣發行者編寫的,因此儘管全部的擴展都提供了基本相同的特性,卻不知足編碼的一致性。PDO消除了這種不一致,提供了可用於各類數據庫的單一接口;
  2)靈活性
       由於PDO在運行時加載必須的數據庫驅動程序,因此不須要在每次使用不一樣數據庫時從新配置和從新編譯PHP。例如,若是數據庫須要從SQL切換到MySQL,只須要加載PDO_MYSQL驅動程序就能夠了。
  3)面向對象特性
       PDO利用PHP5的面向對象特性,能夠得到更強大、更高效的數據庫通訊。
  4)高性能
       PDO是用C編寫的,編譯爲PHP,與用PHP編寫的其餘解決方案相比,雖然其餘都相同,但提供了更高的性能。mysql

 

PDO 安裝

  經過 PHP 的 phpinfo() 函數來查看是否安裝了PDO擴展。sql

  添加擴展: extension=pdo.so數據庫

 

基本使用

  (1)鏈接數據庫、數據庫的用戶名、數據庫的密碼
       (2)生成PDO對象
       (3)執行查詢
 
<?php
$dbms = 'mysql';     //數據庫類型
$host = 'localhost'; //數據庫主機名
$dbName = 'test';    //使用的數據庫
$user = 'root';      //數據庫鏈接用戶名
$pass = '';          //對應的密碼
$dsn = "$dbms:host=$host;dbname=$dbName";


try {
    $dbh = new PDO($dsn, $user, $pass); //初始化一個PDO對象
    echo "鏈接成功<br/>";
    /*你還能夠進行一次搜索操做
    foreach ($dbh->query('SELECT * from FOO') as $row) {
        print_r($row); //你能夠用 echo($GLOBAL); 來看到這些值
    }
    */
    $dbh = null;
} catch (PDOException $e) {
    die ("Error!: " . $e->getMessage() . "<br/>");
}
//默認這個不是長鏈接,若是須要數據庫長鏈接,須要最後加一個參數:array(PDO::ATTR_PERSISTENT => true) 變成這樣: $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT => true)); ?>
相關文章
相關標籤/搜索