首頁 >後端開發 >php教程 >解讀php的PDO連接資料庫的相關內容

解讀php的PDO連接資料庫的相關內容

jacklove
jacklove原創
2018-06-08 14:41:352524瀏覽

php的PDO連線資料庫在資料操作中很重要,本篇文章將詳解其相關內容。

php的PDO連線資料庫是一個物件導向的資料庫的資料物件

之所以我選擇PDO連線資料庫是因為PDO適合任意的資料庫

而mysqli,只適合於mysql,沒有哪個好,哪個不好,哪個用得順手就用哪個。

首先,我們當然要連接資料庫了。那麼PDO的連接資料庫有一個特定的語句就是:
 

$link= new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
通常$servername,myDB,$username,$password都是变量,为了安全,我们可以在conf.php文件下define(定义)他们
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PWD", "123456");
define("DB_DBNAME", "blog");
define("DB_CHARSET","utf8");

然後使用他們:

$link = new PDO("mysql:host=".DB_HOST.";dbname=".DB_DBNAME."", DB_USER, DB_PWD);

通常,我們在增刪改查都要再次連接資料庫,所以我們通常都return $link;來傳回結果,每次使用就呼叫connect()

function connect(){
    try {
        $link = new PDO("mysql:host=".DB_HOST.";dbname=".DB_DBNAME."", DB_USER, DB_PWD);
        //设置PDO错误模式,用于抛出异常
        $link->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    } catch (PDOException $e) {
        echo "数据库连接失败".$e->getMessage();
    }
    return $link;
}


這樣,connect()方法就完成了。

之後我們就想insert(插入)資料了吧,接著往下看

先思考,插入資料需要什麼東西?

insert into {$table}($key) values {$values};

這是一條sql語句,也是我會用到的sql語句。

我用變數代表著那是我們sql語句需要的東西,$table,$key,$values

$table好像我們比較容易找,弄個變數就好了,但是$key和$values呢?能不能同時獲取到呢?

這時候我們就可以使用$array了:

array_key()和array_values()這兩個函數就可以同時取得$key和$values

#那麼這就簡單了,我們變成我們只需要兩個變數$table和$array

所以,我們的insert($table,$array)方法中應該加入兩個變數了

然後之後就要考慮資料的拼接問題,那我就不一一細說了,因為一看就懂

直接上程式碼:

function insert($table,$array){
    try {
        $conn = connect();
        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $key = join(",", array_keys($array));
        $values = "'".join("','", array_values($array))."'";
        $sql = "insert into {$table}($key) values {$values}";
        $result = $conn->exec($sql);
        return $conn->lastInsertId();
    } catch (PDOException $e) {
        echo "插入失败".$e->getMessage();
    }   
}

好啦,碼字有點多了感覺,所以今天就先這樣,之後還有update(),delete()等方法和你們分享

雖然這些是老東西了,但是我想紮實的往上就應該寫寫出來

本篇講解了php的PDO連接資料庫的相關內容,更多相關內容請關注php中文網。

相關推薦:

如何透過php用程式碼實作遞迴取得一個陣列中指定key的值

透過PHP實作讀取一個1G的檔案大小

#講解PHP類別初始化功能碼

#

以上是解讀php的PDO連接資料庫的相關內容的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn