PHP關於反斜槓處理函數addslashes()和stripslashes()的用法

addslashes():對輸入字符串中的某些預約義字符前添加反斜槓,這樣處理是爲了數據庫查詢語句等的須要。這些預約義字符是:單引號 (') ,雙引號 (") ,反斜槓 (\) ,NULL。

stripslashes():刪除由 addslashes() 函數添加的反斜槓。該函數用於清理從數據庫或 HTML 表單中取回的數據。(如果連續二個反斜槓,則去掉一個,保留一個;若只有一個反斜槓,就直接去掉。)

ps:默認狀況下,PHP 指令 magic_quotes_gpc 爲 on,對全部的 GET、POST 和 COOKIE 數據自動運行 addslashes()。不要對已經被 magic_quotes_gpc 轉義過的字符串使用 addslashes(),由於這樣會致使雙層轉義。遇到這種狀況時能夠使用函數 get_magic_quotes_gpc() 進行檢測。例:php

if (get_magic_quotes_gpc()){
      code....
}

addslashes() 例子:數據庫

<?php
$str = "Who's John Adams?";
echo $str . " This is not safe in a database query.<br />";
echo addslashes($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() 例子:spa

<?php
echo stripslashes("Who\'s John Adams?");
?>

輸出:code

Who's John Adams?
相關文章
相關標籤/搜索