php 反斜杠處理函數(shù)
addslashes():對(duì)輸入字符串中的某些預(yù)定義字符前添加反斜杠,這樣處理是為了數(shù)據(jù)庫查詢語句等的需要。這些預(yù)定義字符是:單引號(hào) (') ,雙引號(hào) (") ,反斜杠 (/) ,NULL。
stripslashes():刪除由 addslashes() 函數(shù)添加的反斜杠。該函數(shù)用于清理從數(shù)據(jù)庫或 HTML 表單中取回的數(shù)據(jù)。(若是連續(xù)二個(gè)反斜杠,則去掉一個(gè),保留一個(gè);若只有一個(gè)反斜杠,就直接去掉。)
默認(rèn)情況下,PHP 指令 magic_quotes_gpc 為 on,對(duì)所有的 GET、POST 和 COOKIE 數(shù)據(jù)自動(dòng)運(yùn)行 addslashes()。不要對(duì)已經(jīng)被 magic_quotes_gpc 轉(zhuǎn)義過的字符串使用 addslashes(),因?yàn)檫@樣會(huì)導(dǎo)致雙層轉(zhuǎn)義。遇到這種情況時(shí)可以使用函數(shù) get_magic_quotes_gpc() 進(jìn)行檢測(cè)。例:
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.";?>
輸出結(jié)果:
Who's John Adams? This is not safe in a database query.Who/'s John Adams? This is safe in a database query.
stripslashes() 例子:
<?phpecho stripslashes("Who/'s John Adams?");?>輸出結(jié)果:
Who's John Adams?
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選