php 反斜槓處理函數
addslashes():對輸入字符串中的某些預定義字符前添加反斜槓,這樣處理是為了數據庫查詢語句等的需要。這些預定義字符是:單引號 (') ,雙引號 (") ,反斜槓 (\) ,NULL。
stripslashes():刪除由 addslashes() 函數添加的反斜槓。該函數用於清理從數據庫或 HTML 表單中取回的數據。(若是連續二個反斜槓,則去掉一個,保留一個;若只有一個反斜槓,就直接去掉。)
默認情況下,PHP 指令 magic_quotes_gpc 為 on,對所有的 GET、POST 和 COOKIE 數據自動運行 addslashes()。不要對已經被 magic_quotes_gpc 轉義過的字符串使用 addslashes(),因為這樣會導致雙層轉義。遇到這種情況時可以使用函數 get_magic_quotes_gpc() 進行檢測。例:
if(get_magic_quotes_gpc()){ code.... }addslashes() 例子:
<?php $str="Who's John Adams?"; echo$str." This is not safe in a database query.<br />"; echoaddslashes($str) ." This is safe in a database query."; ?>輸出結果:
Who's John Adams? This is not safe in a database query. Who\'s John Adams? This is safe in a database query.stripslashes() 例子:
<?php echostripslashes("Who\'s John Adams?"); ?>輸出結果:
Who's John Adams?