2014-09-02 52 views
-1

我正在使用基於OSCommerce的現有網站。當我嘗試在本地訪問我的工作副本時,它會顯示一條消息,指出PHP.ini註冊全局變量並且它們需要打開。我已經讀了默認值已經改變了,並且瞭解它背後的原因,但是現在我想在不需要安裝老的PHP版本的情況下運行它。PHP新手 - 重新打開register_globals

我想我可以打開了register_globals回通過將下面一行在php.ini:

register_globals = On 

但是,該網站還告訴我,register_globals的關閉。

我重新啓動Apache;這並沒有幫助。我試着把

<? echo get_ini('register_globals'); ?> 

放到頁面上;它沒有顯示任何東西。 (我不確定這是正確的說法。)

我需要做什麼才能打開register_globals,和/或如何回顯這樣的設置,以便我可以告訴他們是什麼?

+2

您可能需要重新啓動Web服務器。 – MrTux 2014-09-02 13:30:16

+6

在'<?的phpinfo(); ?>'爲'php.ini'路徑。許多系統都有多個'php.ini'文件;確保你正在更新正確的一個。此外,請確保您的PHP版本大於5.4,因爲這是該功能[已刪除]的版本(http://php.net/manual/en/security.globals.php)。 – Dan 2014-09-02 13:30:22

+0

**請勿使用'REGISTER_GLOBALS' ** – mate64 2014-09-02 13:36:28

回答

5

php.net/...

此功能已被棄用的PHP 5.3.0和去除PHP 5.4.0的。

從PHP 5.4開始,register_globals已被棄用。

此外,獲取ini設置的正確功能是ini_get。因此請使用ini_get('register_globals')來檢索該值。

編輯:我不確定你有什麼版本的PHP。