許多共享託管提供者禁用修改php.ini 文件的功能,這可能會阻止用戶禁用Magic Quotes GPC。此設定會自動轉義用戶提交的資料中的字符,從而導致處理資料時出現問題。
要在無法存取php.ini 的情況下停用Magic Quotes GPC,請考慮以下解決方案:
自訂php.ini
一些共享託管環境允許用戶建立自訂php.ini 檔案。例如,在 suexec/FastCGI 設定中,每個網站空間的 php.ini 可能可用。透過將「magic_quotes_gpc = Off」行新增至此自訂 php.ini 檔案中,您可以覆寫預設設定。
.htaccess 檔案
如果自訂 php.ini ini 不是一個選項,您可以嘗試將以下程式碼新增至您的 .htaccess file:
AddType x-mapp-php5 .php php_flag magic_quotes_gpc 0
請注意,該值應為「0」(表示「關閉」),而不是「O」(表示「大寫字母 o」)。
Ini_set() 函數
雖然ini_set() 不能直接改變magic_quotes_gpc 的值(它是一個PHP_INI_PERDIR 設定),您可以在解決方法中使用它:
if ( in_array( strtolower( ini_get( 'magic_quotes_gpc' ) ), array( '1', 'on' ) ) ) { $_POST = array_map( 'stripslashes', $_POST ); $_GET = array_map( 'stripslashes', $_GET ); $_COOKIE = array_map( 'stripslashes', $_COOKIE ); }
此腳本檢查Magic Quotes GPC 是否已啟用,並透過從 $_POST、$_GET 和 $_COOKIE 陣列中刪除斜線來反轉其效果。
以上是如何在沒有 php.ini 存取權的共享託管環境中停用 Magic Quotes GPC?的詳細內容。更多資訊請關注PHP中文網其他相關文章!