萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php反斜槓處理函數addslashes()和stripslashes()的使用教程

php反斜槓處理函數addslashes()和stripslashes()的使用教程

這篇文章寫了php反斜槓處理函數addslashes()和stripslashes()的使用教程,學習過程中遇到問題的同學快來看看吧!

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?
copyright © 萬盛學電腦網 all rights reserved