在php.ini的配置文件中,有個布爾值的設置,就是magic_quotes_runtime,當它打開時,php的大部分函數自動的給從外部引入的(包括數據庫或者文件)數據中的溢出字符加上反斜線。 固然若是重複給溢出字符加反斜線,那麼字符串中就會有多個反斜線,因此這時就要用set_magic_quotes_runtime()與 get_magic_quotes_runtime()設置和檢測php.ini文件中magic_quotes_runtime狀態。 爲了使本身的程序無論服務器是什麼設置都能正常執行。能夠在程序開始用get_magic_quotes_runtime檢測設置狀態秋決定是否要手工處 理,或者在開始(或不須要自動轉義的時候)用set_magic_quotes_runtime(0)關掉。 magic_quotes_gpc設置是否自動爲GPC(get,post,cookie)傳來的數據中的'"\加上反斜線。能夠用 get_magic_quotes_gpc()檢測系統設置。若是沒有打開這項設置,可使用addslashes()函數添加,它的功能就是給數據庫查 詢語句等的須要在某些字符前加上了反斜線。這些字符是單引號(')、雙引號(")、反斜線(\)與 NUL(NULL 字符)。