歡迎來到米粒在線。這篇文章是register_globals=off網站打不開的解決方法。
register_globals是php.ini里的一個配置,這個配置影響到php如何接收傳遞過來的參數,顧名思義,register_globals的意思就是注冊為全局變量,所以當On的時候,傳遞過來的值會被直接的注冊為全局變量直接使用,而Off的時候,我們需要到特定的數組里去得到它。所以,碰到上邊那些無法得到值的問題的朋友應該首先檢查一下你的register_globals的設置和你獲取值的方法是否匹配。(查看可以用phpinfo()函數或者直接查看php.ini)
register_globals=off的目的主要是為安全考慮,同時大多數程序要求將該值設為off,以前用On風格寫的大量腳本怎么辦? 如果你以前的腳本規劃得好,有個公共包含文件,比如config.inc.php一類的文件,在這個文件里加上以下的代碼來模擬一下(這個代碼不保證100%可以解決你的問題,因為我沒有大量測試,但是我覺得效果不錯)。
代碼: |
<?php if ( !ini_get("register_globals") ) { extract($_POST); extract($_GET); extract($_SERVER); extract($_FILES); extract($_ENV); extract($_COOKIE);if ( isset($_SESSION) ) { extract($_SESSION); } } ?> |
評論