PHP关键字global在定义变量中的作用

WBOY
リリース: 2016-06-13 11:09:47
オリジナル
1198 人が閲覧しました

我们在使用

PHP关键字global如果用在function内部,则说明这个function内用的这个变量是全局的,全局变量就是在整个页面里都能起作用。例如

  1. $conf = 1;  
  2. function conf_test() {  
  3. global $conf;  
  4. return ++$conf;  
  5. }  
  6. echo conf_test()." br>";  
  7. echo conf_test()." br>"; 

输出:

2

3

如果没有global $conf;这句,输出就变成了全是1了。PHP关键字global起的作用就是,在function中,声明这个函数内用的$conf不是局部的,而是全局可用的。或者说,在函数内部定义的这个$conf不是函数内的变量,而是这个函数外面(也就是指$conf = 1;)定义的那个$conf.其实这里如果用$GLOBALS数组,就比较容易理解了。

我们在页面声明一个变量$conf其实相当于在$GLOBALS数组中定义了一项$GLOBALS['conf'].而这个$GLOBALS是全局可见的。所以上面的代码制作成$GLOBALS格式的写法就是

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute">conf</span><span> = </span><span class="attribute-value">1</span><span>;  </span></span></li>
<li><span>function conf_test() {  </span></li>
<li class="alt"><span>return ++$GLOBALS['conf'];  </span></li>
<li><span>}  </span></li>
<li class="alt">
<span>echo conf_test()."</span><span class="tag"><span class="tag-name">br</span><span class="tag">></span><span>";  </span></span>
</li>
<li>
<span>echo conf_test()."</span><span class="tag"><span class="tag-name">br</span><span class="tag">></span><span>"; </span></span>
</li>
</ol>
ログイン後にコピー

输出:

2

3

PHP关键字global


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