ホームページ  >  記事  >  バックエンド開発  >  PHP グローバル変数はユーザー定義関数内では一般的ではありません

PHP グローバル変数はユーザー定義関数内では一般的ではありません

WBOY
WBOYオリジナル
2016-06-13 13:08:25998ブラウズ

PHP グローバル変数はユーザー定義関数内では表示されません

グローバル変数は関数の外側で定義されます。そのスコープは PHP ファイル全体ですが、関数内で表示するには、global で宣言する必要があります。

?

<?php
$val1 = 1;
$val2 = 2;
function test()
{
   echo "start\n";
   echo "val1: ".$val1."\n";                                // 不可见
      echo "val2: ".$val2."\n";                             // 不可见

   global $val2;                                    //global声明了$val2, 使其可见
   echo "声明:global val2 以后\n"; 
      echo "val2: ".$val2."\n";                                //$val2 可见了
   $val2 = 100; 
   echo "end\n";
   $val1 = 100;                                                    //只是局部变量
}
test();
echo "调用了test()以后:\nval2 = ".$val2."\n";      //$val2被test()函数改变了
echo "val1 = ".$val1."\n";                                    //没有被test()改变
?>

?
結果:

start
val1:
val2:
ステートメント: global val2 Later
val2: 2
end


test() 呼び出し後:
val2 = 100
val1 = 1

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