PHP 預計 廢除 ext/MySQL 改用 PDO 或 MySQLi

PHP 的長期計畫, 預計廢除 ext/MySQL, 採用 PDOMySQLi (MySQL Improved).

關於 PHP 預計改用 PDO / MySQLi 新聞

下述摘錄自此篇原文: '[PHP-DEV] deprecating ext/mysql' - MARC

What this means to ext/mysql:

  • - Softly deprecate ext/mysql with education (docs) starting today
  • - Not adding E_DEPRECATED errors in 5.4, but revisit for 5.5/6.0
  • - Add pdo_mysql examples within the ext/mysql docs that mimic the current
  • examples, but occasionally introduce features like prepared statements
  • - Focus energy on cleaning up the pdo_mysql and mysqli documentation
  • - Create a general "The MySQL situation" document that explains the situation

下述摘錄自: PHP 長期計畫:廢除 ext/mysql,改用 pdo_mysql 或 mysqli - From Gea-Suan Lin

主要的原因是 security 習慣問題。因為 ext/mysql 不支援 prepare 與 execute 這類不需要自己處理 escape 的函式,所以使用 ext/mysql 的人必須自己處理 escape 的問題,也就是透過 mysql_escape_string 或是 mysql_real_escape_string。

而很多書籍為了讓初學者容易了解,會給出很糟的範例,像是:

mysql_query("SELECT * FROM `user` WHERE `username` = '$username';");

而 $username 沒有先檢查過。

有空的話, 開始把以前的 Code 都慢慢改成 PDO 或 MySQLi 吧~

相關網頁


關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 Programming 並標籤為 , 。將永久鏈結加入書籤。

PHP 預計 廢除 ext/MySQL 改用 PDO 或 MySQLi 有 5 則回應

  1. 阿任 說道:

    喔嗯
    嗯嗯
    只能新的開發時注意
    但是舊的....如果網管不幫忙也是枉然= =
    舊的就是能跑就好....XD

    • Tsung 說道:

      事實上, 只要以前得 Code 沒有安全性的問題, 就不用太在意一定要換掉. 🙂

    • 阿任 說道:

      喔嗯 剛剛會錯意XD
      其實只要換code就可以XD

      剛剛以為是另一個儲存引擎XD
      Tsung 大回的好快
      本來想刪掉我剛剛留言
      但是沒辦法刪 (真不好意思)

      不過真的停用也是可以
      因為舊版的PHP那邊應該是不會升級 (嗯嗯)

    • Tsung 說道:

      呵呵, 不用在意啦, 也不用刪掉沒差啦. 🙂

發表迴響