PHP 全域變數之Global關鍵字引用解讀_PHP教程

來源:互聯網
上載者:User
本文章來給大家簡單的介紹一下關於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關鍵字引用介紹,雖說評論跟文章相比,及其的簡短,但原理卻闡述的很明白,而且淺...

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.