為什麼推薦使用MySQLi?
02-04
雖然許多項目仍然使用MySQL擴展。但需要留意,使用MySQLi或者PDO O (PHP Data Object)是官方建議的。
為什麼推薦使用MySQLi而不是MySQL呢?
1. 為了安全。MySQLi支持 prepare(預處理)語句 - 這是一種更安全的和資料庫打交道的方式,可以保護你免受SQL注入。僅憑這一點應該夠選擇MySQLi而不是MySQL
2. MySQLi支持幾乎所有MySQL特性。
3. MySQLi是面向對象的,當然也可以用過程化的方式書寫代碼。
4. MySQLi的支持預處理語句,事務及多條語句。
由於MySQLi只支持MySQL資料庫,如果有跨資料庫平台的需要,那麼就需要使用PDO了。PDO提供了一個抽象層來操作資料庫,支持目前大部分的資料庫,總體上說,它比MySQLi移植性更好,更強勁,更面向對象。PDO是官方大力推薦的,相信越來越多的人會使用它。
許多項目,還是使用舊的MySQL擴展,使用MySQL擴展更多是因為大家習慣了舊的方式方法,各種書籍、文檔也只是簡單敘述如何操作資料庫而沒有從安全、移植性、面向對象、標準的角度去介紹如何使用操作資料庫。我們建議使用更先進、更安全的方式,但最終選擇何種工具、方法,涉及的因素眾多,更多是人員和組織的範疇。
推薦閱讀:
※半同步複製介紹
※如何看待MySQL發布的Group Replication?
※mysql轉mongodb如何解決ID自增?
※【原創】MYSQL 的那些「坑」
※請問這個PHP下防範MySQL注入攻擊的方法管用嗎?