首頁 >後端開發 >php教程 >如何在沒有 php.ini 存取權限的情況下停用共享主機上的魔術引號?

如何在沒有 php.ini 存取權限的情況下停用共享主機上的魔術引號?

Patricia Arquette
Patricia Arquette原創
2024-11-25 06:04:101047瀏覽

How Can I Disable Magic Quotes on Shared Hosting Without php.ini Access?

停用共享主機上的魔術引號

關閉共享主機上的魔術引號可能很棘手,尤其是當您無權訪問時php.ini。

使用.htaccess

將 php_flag magic_quotes_gpc 添加到 .htaccess 檔案可能並不總是有效。該指令通常用於 mod_php 環境,但共享託管提供者通常使用 suexec/FastCGI 設定。

自訂 php.ini

在這種情況下,您可以安裝自訂 php.ini 檔案。一些共享託管提供者允許在 suexec/FastCGI 設定中執行此操作。

ini_set()

使用 ini_set('magic_quotes_gpc', 'O') 不會關閉魔術引號。正確的值應該是 0、 false 或“off”。但是,需要注意的是 magic_quotes_gpc 是 PHP_INI_PERDIR 設置,這意味著您無法使用 ini_set() 更改它。

.htaccess 替代

Since ini_set()不是一個選項,您可以使用 .htaccess 檔案來代替。但是,您必須使用正確的指令:

php_value magic_quotes_gpc 0

腳本解決方法

如果不允許.htaccess,您可以實現解決方法腳本來逆轉以下效果魔法名言:

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 );
}

以上是如何在沒有 php.ini 存取權限的情況下停用共享主機上的魔術引號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn