PHP の定義済み変数の多くは「スーパーグローバル」です。これは、スクリプトのスコープ全体で使用できることを意味します。これらは、 global $variable; を実行せずに、関数またはメソッド内でアクセスできます。
これらのスーパーグローバル変数は次のとおりです:
- $GLOBALS
- $_SERVER
- $_GET
- $_POST
- $_FILES
- $_COOKIE
- $_SESSION
- $_リクエスト
-
$_ENV
1. まず、$GLOBALS を見てみましょう。これは、すべての変数を含むグローバルな組み合わせ配列です。これは何を意味するのでしょうか?
れーれー
このプログラムを実行すると、必ず a が出力されます。 a 変数は t() 関数で出力されるのがわかりやすいでしょうか。しかし、php のプログラムを見てください。
りー
これは3を出力しますか?いいえ、いいえ、いいえ、それは単純すぎます。何も出力できません。なぜですか? $a はグローバル変数ではなく、その値は t() 関数内で区別できないため、非常に単純です。世界は暗いですどうすればいいですか? ?緊張しないでください。ここで $GLOBALS が登場します。私が今述べたのは、すべての変数を含むグローバルな組み合わせ配列です。これで理解できたはずです。 、$GLOBALS を通じて $GLOBAL['$A'] メソッドを使用して t() 関数の $a の値を取得できます。 t() 関数の内容を関数 t(){
に変更してみてください。
エコー $GLOBALS['a'];
}これを実行すると、$a の値がページに明確に表示されます。 $GLOBAL のスコープについて話しましょう。現在のページの値と、現在のページから必要なページを取得できます。かなりすごいですね。もちろん、これは万能薬ではありません。もう一度考えてみましょう。
れーれー
出力は何ですか? ? ?答えは 5 のみです。これは、$GLOBALS が他の関数の値を取得できないことを意味します。
2 番目の $_SERVER を見てください。$_SERVER は、ヘッダー、パス、スクリプトの場所などの情報を含む配列です。この配列内の項目は Web サーバーによって作成されます。すべてのサーバーがすべてのアイテムを提供するという保証はありません。サーバーは一部のアイテムを無視したり、ここにリストされていないアイテムを提供したりする可能性があります。たとえば、$_SERVER['REMOTE_ADDR'] は、現在のユーザーの IP を取得できます。次に、foreach を使用して $_SERVER 配列全体を走査し、それを出力します。コードは次のとおりです:
れーれー
効果を見たいけど書きたくない、または今は書き込めない場合は、この URL を確認してください。これは sae サーバーの効果です。 http://5253.sinaapp.com/blog/server.php ここにアップロードしました。
http://www.bkjia.com/PHPjc/664281.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/664281.html技術記事 PHP の定義済み変数の多くは「スーパーグローバル」です。これは、スクリプトのスコープ全体で使用できることを意味します。関数やメソッドでグローバル $variable を実行する必要はありません...