資料存入前先處理特殊符號,使用 php addslashes

寫 PHP Script 時總是會需要將資料存入資料庫中,無奈的是 SQL 語法中包含有一些特殊符號是不可以隨便使用的,例如單引號或雙引號就不可以隨便加入 SQL 語法中,否則很可能會造成語法被截斷而失去效用,甚至是被加上其他的語法,進行資料撈取的行為。

還好 PHP 團隊早就知道這一點,提供了 PHP addslashes 這個函數,讓我們用來替特殊符號(單引號、雙引號、反斜線)增加反斜線,讓這些符號轉換成字串,也就是不產生效果,而是以字串的形式存入資料庫,聽起來是不是比較合理一點呢?

PHP addslashes 函數:http://www.wibibi.com/info.php?tid=316(繁體中文)
PHP 官方網站介紹:http://php.net/manual/en/function.addslashes.php(英文)

既然有增加反斜線的功能,當然就有消除反斜線的功能,畢竟反斜線一直無限制的增加也是不可以的,會造成資料錯誤,與原本的字串不相符等問題,所以 PHP 官方也提供了一個叫做 stripslashes 的函數,用來移除反斜線,以下為中英文的介紹。

PHP stripslashes 函數:http://www.wibibi.com/info.php?tid=317(繁體中文)
PHP 官方網站介紹:http://www.php.net/manual/en/function.stripslashes.php(英)

熟悉增加反斜線以及消除反斜線的技巧,算是 PHP 的基礎入門。