上篇文章為大家介紹了《鮮為人知的函數變數作用域(實現步驟)》,本文繼續介紹全域變數如何定義?如何聲明?起作用是什麼?一起學習吧!
全域變數:
普通變數:普通變數是指函數外部宣告的變量,其作用範圍是整個頁面的部分,而函數的內部無法使用;
全域變數:在函數的內部和外部都可以存取和使用的變數是全域變數;
<?php /****** 普通变量*/ $pome = '你最喜欢的唯美古诗词有哪些?'; function pome(){ echo $pome; } pome(); ?>
示範結果:
程式碼解析:
定義一個function,pome()
,緊接著我們能否使用函數外部定義變數呢?根據我們程式碼運行的結果可以看出並不行,結果依舊顯示未定義,也就是說,當我們在函數內部定義變數然後輸出(echo),結果會出現我們沒有定義此變量,因此我們知道,普通變量是指函數外部宣告的變量,其作用範圍是整個頁面的部分,而函數的內部無法使用;
程式碼示範如下:
<?php /****** 普通变量*/ $pome = '你最喜欢的唯美古诗词有哪些?'; function pome(){ echo $pome; } pome(); echo $pome; ?>
##程式碼解析:
首先在函數的外部定義一個變量,接著,在函數內部定義一個函數function demo(),如果我們想做出全域變數我們需要在函數內部聲明一個與外部同名的變量,聲明完變量,我們需要使用一個關鍵字叫做(global),來聲明一個與外部同名的變量,此時就是一個全局變量,最後輸出(echo)此內容,演示代碼如下:<?php /****** 全局变量*/ $str = '树叶落到木地板上,说了一句,我喜欢你'; function demo(){ global $str; echo $str; } demo(); ?>當我們在函數內部嘗試改變$str的值,是怎麼樣的?示範程式碼如下:
<?php /****** 全局变量*/ $str = '树叶落到木地板上,说了一句,我喜欢你'; function demo(){ global $str; echo $str; $str = '我也喜欢你'; } echo '这是第一个在函数外部输出:'. $str; echo '<hr/>'; echo '这是在函数内部输出'.demo(); echo '<hr/>'; echo '这是第二个在函数外部输出:'. $str; ?>程式碼示範如下:
#綜上所示:
實作全域變數方法1:
注意:global宣告全域變數是禁止賦值。
如果一個變數在函數內部已經賦值,之後使用global進行全域化聲明,結果是該變數的值變成函數外部變數的值實作全域變數方法2:
$GLOBALS-在函數內部可以使用$GL0BALS[變數名稱]的方式直接呼叫函數外部的變數值,此時函數內外都可以使用,實作了另-種方式的全域變數。 推薦學習:《PHP影片教學》
以上是PHP中全域變數如何定義?如何聲明?其作用是什麼? (總結)的詳細內容。更多資訊請關注PHP中文網其他相關文章!