您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“php中全局變量和局部變量有哪些區別”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“php中全局變量和局部變量有哪些區別”這篇文章吧。
區別:1、局部變量是在函數內部定義的變量,只能在定義它的函數內使用;而全局變量是定義在所有函數以外的變量,其作用域是當前源碼的任何地方,但是在函數內部是不可用的。2、局部變量會在函數調用結束時自動銷毀,全局變量則在程序結束運行時才會被銷毀。
本教程操作環境:windows7系統、PHP7.1版,DELL G3電腦
變量的作用范圍(可以被使用的范圍)稱為變量作用域,變量必須在其有效范圍內使用,如果超出有效范圍,變量就會失去其意義。按作用域可以將 PHP 變量分為全局變量和局部變量兩種。
可以在當前源碼中任何地方(函數外部)使用的變量稱為全局變量,它們具有全局作用域;只能在對其進行定義的函數內部使用的變量稱為局部變量,它們具有局部作用域。
在 PHP 中,全局變量不能直接在函數內部使用;而局部變量也不能直接在函數外部使用。當然這也不是絕對的,通過一些方法還是可以實現在函數內調用全局變量、在函數外調用局部變量的,這些我們會在后面的學習中介紹。
局部變量與局部作用域
局部變量就是在函數的內部定義的變量,它只能在定義它的函數內使用。局部變量會在函數調用結束時自動銷毀。
【示例】下面定義一個名為 example 的函數,并在函數內部定義一個局部變量 a,然后分別在該函數內部及函數外部嘗試輸出變量 a 的值,具體代碼如下:
<?php header("Content-type:text/html;charset=utf-8"); function example() { $a = "歡迎來到億速云!"; // 在函數內定義變量 a echo "局部變量 a 的值為:" . $a . "<br>"; } example(); if ($a) {// 在函數外部調用 $a,如果 $a 存在則會打印下面的內容 echo "在函數外部調用函數內的局部變量 a,其值為:" . $a; } ?>
運行結果如下:
通過運行結果可以看出,在函數外部并不能調用函數內部定義的局部變量,因為局部變量 $a 的作用域是定義它的 example() 函數,在函數以外的地方無法使用。
全局變量與全局作用域
全局變量就是定義在所有函數以外的變量,其作用域是當前源碼的任何地方,但是在函數內部是不可用的。在程序運行期間全局變量會一直存在,只有程序結束運行時才會被銷毀。
【示例】定義一個全局變量 a,并分別在函數內部和外部輸出全局變量的值,具體代碼如下:
<?php header("Content-type:text/html;charset=utf-8"); $a = "歡迎來到億速云!"; // 在函數外部定義全局變量 a function example() { if ($a) { echo "在函數內部調用全局變量 a,其值為:" . $a; } } example(); echo "在函數外部調用全局變量 a,其值為:" . $a; ?>
運行結果如下:
通過運行結果可以看出,在函數內部并沒有成功調用到 $a,但是在函數外部可以。
以上是“php中全局變量和局部變量有哪些區別”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。