提交的特殊字符會被自動轉義


提交的特殊字符會被自動轉義

php.ini

magic_quotes_gpc

設置是否自動為GPC(get,post,cookie)傳來的數據中的'"\加上反斜線。可以用get_magic_quotes_gpc()檢測系統設置。如果沒有打開這項設置,可以使用addslashes()函數添加,它的功能就是給數據庫查詢語句等的需要在某些字符前加上了反斜線。這些字符是單引號(')、雙引號(")、反斜線(\)與 NUL(NULL 字符)。

magic_quotes_runtime 

如果打開的話,大部份從外部來源取得數據並返回的函數,包括從數據庫和文本文件,所返回的數據都會被反斜線轉義。該選項可在運行的時改變,在 PHP 中的默認值為 off。

magic_quotes_sybase

如果打開的話,將會使用單引號對單引號進行轉義而非反斜線。此選項會完全覆蓋 magic_quotes_gpc。如果同時打開兩個選項的話,單引號將會被轉義成 ”。而雙引號、反斜線 和 NULL 字符將不會進行轉義。

雖然方便的實現了對特殊符號的自動轉義,但是這樣會使得程序效率降低,並導致程序可移植變得麻煩。在不知道服務器ini設置的情況下,還需要調用get_magic_quotes_gpc() ,get_magic_quotes_runtime() 或ini_get()來檢測狀態。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM