1. 比較例
例 1:
コードをコピーします コードは次のとおりです:
$var1 = 1;
unset($GLOBALS[' var1'] );
}
test();
echo $var1;>
$var1 が削除されたため、何も出力されませんでした。
例 2:
コードをコピーします コードは次のとおりです:
$var1 = 1;
function test(){
unset($var1);
}
test ();
echo $var1;>
誤って 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 の同じ名前の参照またはポインタです。
http://www.bkjia.com/PHPjc/325770.html
www.bkjia.com
truehttp://www.bkjia.com/PHPjc/325770.html技術記事 1. 比較例 1: 以下のコードをコピーします。 ?php $var1 = 1; function test(){ unset($GLOBALS['var1']); echo $var1;はい、それで…