本文章來給大家簡單的介紹一下關(guān)于PHP 全局變量 Global關(guān)鍵字引用介紹,雖說評論跟文章相比,及其的簡短,但原理卻闡述的很明白,而且淺顯易懂,尤其是對于有一些語言基礎(chǔ)的人來說,是值得總結(jié)的.不賣關(guān)子,開始正題:
引用PHP手冊的$GLOBALS的解釋:
Global 變量:$GLOBALS
注意: $GLOBALS 在 PHP 3.0.0 及以后版本中適用.
由所有已定義全局變量組成的數(shù)組.變量名就是該數(shù)組的索引.
這是一個“superglobal”,或者可以描述為自動全局變量. 也就是說上面代碼中的$var1和$GLOBALS['var1']是指的同一變量,而不是2個不同的變量!
全局變量舉例,實(shí)例代碼如下:
- $pangbu = "pangbu";
- function demo (){
- global $pangbu;
- echo $pangbu;
- }
- demo();
- ?>
解釋:其實(shí)global $pangbu ;是$pangbu = &$_GLOBAL['pangbu ']的簡寫,意思是$pangbu 是$_GLOBAL['pangbu ']的一個引用,至于引用怎么用,$pangbu 就怎么用了.自己的一些筆記之前一直沒有搞明白 global 的用法 ,雖然會用但卻一直在朦朦朧朧中糊里糊涂的,現(xiàn)在終于搞明白了.為了了解更多Global的應(yīng)用,請看下面php案例:
實(shí)例代碼如下:
- $url = "m.survivalescaperooms.com";
- function get_url(){
- echo "The blog is".$url; //這里獲取不到$url,因?yàn)樗皇且粋€未定義的局部變量
- }
- get_url();
- ?>
上面的例子會報notice錯誤!實(shí)例代碼如下:
- $url = "m.survivalescaperooms.com";
- function get_url(){
- global $url;
- echo "The blog url is ".$url;
- }
- get_url();
- ?>
上面這樣用法就是對的,在函數(shù)中聲明全局變量后,任何變量的所有引用變量都會指向到全局變量!另外有必要說一下,全局?jǐn)?shù)組$GLOBALS[],用上面的例子改寫下就是這樣:
實(shí)例代碼如下:
- $url = "m.survivalescaperooms.com";
- function get_url(){
- echo "The blog url is ".$GLOBALS['url'];
- }
- get_url();
- ?>
注意global聲明變量不能復(fù)制,如 global $url = "m.survivalescaperooms.com";這樣是錯誤的
新聞熱點(diǎn)
疑難解答