1

サーバーを変更し、php 5.3 をインストールしました。新しいサーバーで次のエラーが発生しました: 未定義の変数: HTTP_SERVER_VARS 登録グローバルがオフになっていることに気付きました。php.net Web サイトでは、php > 4.2 でオフになっているのには理由があります。質問は、特にグローバルの登録をオンにできない場合に、未定義の変数 HTTP_SERVER_VARS を取得しないようにするにはどうすればよいですか?

ありがとう。

4

3 に答える 3

3

すべてのphpファイルで$HTTP_SERVER_VARS$_SERVERに変更したくない場合は、次を使用できます。

global $HTTP_SERVER_VARS;
$HTTP_SERVER_VARS = $_SERVER;
于 2011-10-06T01:17:46.690 に答える
2

$_SERVER$_GET$_POST、および を使用するだけ$_COOKIEです。の影響を受けませんregister_globals

詳細については、スーパーグローバルのマニュアル ページを参照してください。

于 2011-10-06T01:13:12.033 に答える
1

PHP 5.3までは、そのためのphp.ini設定があります。

register_long_arrays = On

ただし、非推奨のメモが表示されます。

同様にオプションがありますregister_globals

そして、その理由についての章全体があります。それを読む良い機会かもしれません:http:
//php.net/manual/en/security.globals.php

于 2011-10-06T01:21:57.487 に答える