您好,登錄后才能下訂單哦!
php中MySQL、PDO和MySQLi有什么區(qū)別?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
php中MySQL、MySQLi、PDO的區(qū)別有:
1、PHP的MySQL擴展
設計開發(fā)允許PHP應用與MySQL數(shù)據(jù)庫交互的早期擴展。mysql擴展提供了一個面向過程 的接口;
并且是針對MySQL4.1.3或更早版本設計的。因此,這個擴展雖然可以與MySQL4.1.3或更新的數(shù) ;
據(jù)庫服務端 進行交互,但并不支持后期MySQL服務端提供的一些特性。
2、PHP的mysqli擴展
mysqli擴展,我們有時稱之為MySQL增強擴展,可以用于使用 MySQL4.1.3或更新版本中新的高級特性;
mysqli擴展在PHP 5及以后版本中包含;
mysqli擴展有一系列的優(yōu)勢,相對于mysql擴展的提升主要有:面向?qū)ο蠼涌凇?prepared語句支持、多語句執(zhí)行支持、事務支持、增強的調(diào)試能力、嵌入式服務支持。
mysqli 擴展允許用戶訪問由 MySQL 4.1 或更高版本所提供的功能。經(jīng) MySQL AB 授權(quán),本文檔中包括部分 MySQL 手冊的內(nèi)容。
3、PHP數(shù)據(jù)對象(PDO)
PHP 數(shù)據(jù)對象(PDO) 擴展為PHP訪問數(shù)據(jù)庫定義了一個輕量級的一致接口。實現(xiàn) PDO 接口的每個數(shù)據(jù)庫驅(qū)動可以公開具體數(shù)據(jù)庫的特性作為標準擴展功能。 注意利用 PDO 擴展自身并不能實現(xiàn)任何數(shù)據(jù)庫功能;必須使用一個具體數(shù)據(jù)庫的 PDO 驅(qū)動來訪問數(shù)據(jù)庫服務。
PDO 提供了一個數(shù)據(jù)訪問抽象層,這意味著,不管使用哪種數(shù)據(jù)庫,都可以用相同的函數(shù)(方法)來查詢和獲取數(shù)據(jù)。 PDO不提供數(shù)據(jù)庫抽象層;它不會重寫 SQL,也不會模擬缺失的特性。如果需要的話,應該使用一個成熟的抽象層。
PDO真正的以底層實現(xiàn)的統(tǒng)一接口數(shù)庫操作接口
PDO支持更高級的DB特性操作,如:存儲過程的調(diào)度等,mysql原生庫是不支持的.
PDO是PHP官方的PECL庫,兼容性穩(wěn)定性必然要高于MySQL Extension,可以直接使用 pecl upgrade pdo 命令升級.
關于php中MySQL、PDO和MySQLi有什么區(qū)別問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業(yè)資訊頻道了解更多相關知識。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。