ホームページ > バックエンド開発 > PHPチュートリアル > PHP グローバル変数 global と $GLOBALS[] の違い

PHP グローバル変数 global と $GLOBALS[] の違い

WBOY
リリース: 2016-07-25 09:05:14
オリジナル
1000 人が閲覧しました
  1. $var1 = 1;
  2. function test(){
  3. unset($GLOBALS['var1']);
  4. }
  5. test();
  6. echo $var1;
  7. ?>
コードをコピー

$var1は削除されているため、何も出力されません。

例 2:

  1. $var1 = 1;
  2. function test(){
  3. global $var1;
  4. unset($var1);
  5. }
  6. test();
  7. echo $var1;
  8. ?>
コードをコピー

誤って印刷されました 1.これは、エイリアス参照のみが削除され、その値がまったく変更されていないことを証明します。

2. 説明 global $var は実際には &$GLOBALS['var'] であり、これは外部変数を呼び出すための単なるエイリアスです。 上記のコードの $var1 と $GLOBALS['var1'] は、2 つの異なる変数ではなく、同じ変数を参照します。 PHP のグローバル変数は C 言語とは少し異なります。 C 言語では、ローカル変数でカバーされていない限り、グローバル変数は関数内で自動的に有効になります。 これにより、誰かが不用意にグローバル変数を変更してしまう可能性があるため、問題が発生する可能性があります。 PHP のグローバル変数を関数で使用する場合は、global を使用してグローバルとして宣言する必要があります。 PHP のグローバル変数の機能はグローバル変数を定義することですが、このグローバル変数は Web サイト全体ではなく、現在のページ (include または require 内のすべてのファイルを含む) に適用されます。

3. 概要 1.$GLOBALS['var'] は外部グローバル変数そのものです 2.global $var は、外部 $var と同じ名前の参照またはポインタです。



ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート