ホームページ >バックエンド開発 >PHPチュートリアル >$_ENV が空で、$_SERVER が 2 回設定されているのはなぜですか?

$_ENV が空で、$_SERVER が 2 回設定されているのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-11 00:47:02581ブラウズ

Why is my $_ENV Empty and Populating $_SERVER Twice?

$_ENV が空で、$_SERVER が 2 回設定されているのはなぜですか?

$_ENV 変数を介して環境変数にアクセスしようとすると、ユーザーは空の結果に遭遇します。この問題は、php.ini 構成ファイルで明示的に許可されていない限り、$_ENV を設定できないことが原因で発生します。これは、通常、特に WAMP サーバーではデフォルトで無効になっています。 variables_order ディレクティブを「EGPCS」に変更すると、$_ENV が有効になり、環境変数にアクセスできるようになります。

観察されるもう 1 つの特異な動作は、.htaccess で SetEnv を使用するときに $_SERVER 配列で環境変数が重複することです。ファイル。 SetEnv は $_ENV を設定することが期待されていますが、代わりにこれらの変数を $_SERVER に割り当てます。

これらの複雑さを回避するには、$_ENV の PHP 設定の影響を受けない getenv() 関数を利用することをお勧めします。大文字と小文字が区別されないため、さらなるレベルの柔軟性が提供されます。

以上が$_ENV が空で、$_SERVER が 2 回設定されているのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。