PHP セッションの副作用警告: グローバル変数に関するトラブル
PHP Web サイトをホストしようとすると、次のような警告が表示される場合があります。スクリプトは、PHP 4.2.3 で非推奨となったセッションの副作用に依存しています。この警告は、register_globals オプションが有効になっていない限り、セッション拡張機能がグローバル変数をデータ ソースとして認識しない場合に発生します。
問題の理解
グローバル変数とは、次のことができる変数です。スクリプト内の任意のスコープからアクセスできます。古いバージョンの PHP では、セッション拡張機能によってグローバル変数がセッションに自動的に登録されます。ただし、この動作はセキュリティ リスクであると考えられ、PHP 4.2.3 で削除されました。
ソースの追跡
警告のソースを特定するには、以下を探します。セッションコンテキストでグローバル変数を使用しているインスタンス。具体的には、警告が発生する可能性があるため、セッション変数と同じ名前の変数を確認します。
警告を無効にする
PHP を設定することで警告を無効にできます。構成オプション「session.bug_compat_warn」および「session.bug_compat_42」を「off」に設定します。これらの設定は次の方法で構成できます:
session.bug_compat_warn = 0 session.bug_compat_42 = 0
php_value session.bug_compat_warn 0 php_value session.bug_compat_42 0
代替解決策:
または、次の行をスクリプトに追加することで、PHP が既存の変数を検索しないようにすることもできます。 :
<code class="php">ini_set('session.bug_compat_warn', 0); ini_set('session.bug_compat_42', 0);</code>
以上がグローバル変数に関連する PHP セッションの副作用警告を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。