本文章來給大家簡單的介紹一下關於PHP 全域變數 Global關鍵字引用介紹,雖說評論跟文章相比,及其的簡短,但原理卻闡述的很明白,而且淺顯易懂,尤其是對於有一些語言基礎的人來說,是值得總結的。不賣關子,開始正題:
引用PHP手冊的$GLOBALS的解釋:
Global 變數:$GLOBALS
注意: $GLOBALS 在 PHP 3.0.0 及以後版本中適用。
由所有已定義全域變數組成的數組。變數名就是該數組的索引。
這是一個“superglobal”,或者可以描述為自動全域變數。
也就是說上面代碼中的$var1和$GLOBALS['var1']是指的同一變數,而不是2個不同的變數!
全域變數舉例
代碼如下 |
複製代碼 |
$pangbu = "pangbu"; function demo (){ global $pangbu; echo $pangbu; } demo(); ?> |
解釋
其實global $pangbu ;是$pangbu = &$_GLOBAL['pangbu ']的簡寫,
意思是$pangbu 是$_GLOBAL['pangbu ']的一個引用,至於引用怎麼用,$pangbu 就怎麼用了。
自己的一些筆記
之前一直沒有搞明白 global 的用法 ,雖然會用但卻一直在朦朦朧朧中糊裡糊塗的,現在終於搞明白了。
.
為了瞭解更多Global的應用,請看下面php案例:
代碼如下 |
複製代碼 |
$url = "www.bKjia.c0m"; function get_url(){ echo "The blog is".$url; //這裡擷取不到$url,因為它只是一個未定義的局部變數 } get_url(); ?>
|
上面的例子會報notice錯誤!
代碼如下 |
複製代碼 |
$url = "www.bKjia.c0m"; function get_url(){ global $url; echo "The blog url is ".$url; } get_url(); ?>
|
上面這樣用法就是對的,在函數中聲明全域變數後,任何變數的所有引用變數都會指向到全域變數!
另外有必要說一下,全域數組$GLOBALS[],用上面的例子改寫下就是這樣:
代碼如下 |
複製代碼 |
$url = "www.bKjia.c0m"; function get_url(){ echo "The blog url is ".$GLOBALS['url']; } get_url(); ?>
|
注意global聲明變數不能複製,如 global $url = "www.hzhuti.com"; 這樣是錯誤的
http://www.bkjia.com/PHPjc/628803.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/628803.htmlTechArticle本文章來給大家簡單的介紹一下關於PHP 全域變數 Global關鍵字引用介紹,雖說評論跟文章相比,及其的簡短,但原理卻闡述的很明白,而且淺...