global是php中乙個比較特殊的命令,大家直接叫他超級全域性變數了,下面我來介紹我今天在使用global定義全域性學習筆記了
很不習慣php中的變數作用域,php中函式變數和全域性是完全隔絕的,也就是無法相互訪問。
比如下面這樣:
複製****如下:
$test = 123;
abc(); //這裡什麼都不輸出,因為訪問不到$test變數
function abc()$test = 123;
abc(); //這裡什麼都不輸出,因為訪問不到$test變數
function abc()
如果,你想在函式內部訪問外部變數,你需要這樣:
複製****如下:
$test = 123;
abc(); //輸出123
function abc()$test = 123;
abc(); //輸出123
function abc()
但如果我們在函式中定義全域性變數呢,像下面這樣:
複製****如下:
function abc()
abc();
echo($test); //輸出123function abc()
abc();
echo($test);
//輸出123通過這種方式,我們可以在外部訪問到函式內部定義的變數
在使用者自定義函式中,乙個區域性函式範圍將被引入。任何用於函式內部的變數按預設情況將被限制在區域性函式範圍內(包括include 和 require 匯入的檔案內的變數)!
解釋:a.php檔案的內test_global是定義好的第三方函式,該函式用include匯入了b.php檔案內的$a的global全域性變數,所以$a被限制在test_global區域性函式範圍內,所以b.php檔案內的$a的作用範圍都在test_global內,而不是作用了整個a.php內….
解決方案:
1. 衝出區域性函式
檔案複製****如下:
<?php
function test_global()
include 'b.php'; //將include 從區域性test_global函式中移出
$a = 0 ;
test_global();
echo $a;
?>
檔案<?php
function test()
?>
2.優秀的訪問器
複製****如下:
檔案<?php
include 'b.php';
$a =0;
set_global($a);
echo $a;
?>
檔案<?php
function set_global(&$var)
?>
php Global全域性變數
global的作用 global的作用是定義全域性變數,但是這個全域性變數不是應用於整個 而是應用於當前頁面,包括include或require的所有檔案。1,在函式體內沒有使用global宣告變數是全域性的,那麼在函式體內不能訪問外面的變數。例如以下 test 123 abc function a...
PHP Global定義全域性變數使用說明
global是php中乙個比較特殊的命令,大家直接叫他超級全域性變數了,下面我來介紹我今天在使用global定義全域性學習筆記了 很不習慣php中的變數作用域,php中函式變數和全域性是完全隔絕的,也就是無法相互訪問。比如下面這樣 複製 如下 test 123 abc 這裡什麼都不輸出,因為訪問不到...
定義全域性變數
inte ce property strong,nonatomic uiwindow window propertyboolislogin end synthesize window window synthesizeislogin end 那麼在其他的class裡,則可以通過下列 呼叫全域性變數 ...