1、global 函數內訪問全局變量
<?php $x=5; $y=10; function myTest() { global $x,$y; $y=$x+$y; } myTest(); echo $y; // 輸出 15 ?>
如果myTest函數裡不使用global,無法使用
PHP 將所有全局變量存儲在一個名為 $GLOBALS[index] 的數組中。 index 保存變量的名稱。這個數組可以在函數內部訪問,也可以直接用來更新全局變量。 如$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']
2、Static 當一個函數完成時,它的所有變量通常都會被刪除。然而,有時候您希望某個局部變量不要被刪除。
function myTest() { static $x=0; echo $x; $x++; } myTest(); myTest(); myTest(); 0 1 2
每次調用該函數時,該變量將會保留著函數前一次被調用時的值。該變量仍然是函數的局部變量。