PHP 變數作用域
- local
- global
- static
- parameter
區域性作用域、全域性作用域
<?php
$x = 50; // 全域性變數
function myTest()
{
$y = 100; // 區域性變數
}
PHP global 關鍵字
global
關鍵字用於函式內訪問全域性變數。
在函式內呼叫函式外定義的全域性變數,可以在函式中的變數前加上 global 關鍵字。
<?php
$x = 50;
$y = 100;
function myTest()
{
global $x, $y;
$y = $x + $y;
}
myTest();
echo $y; // 輸出 150
PHP 將所有全域性變數儲存在一個名為
$GLOBALS
的陣列中。
所以上述程式碼可以換一種寫法:
<?php
$x = 50;
$y = 100;
function myTest()
{
$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
}
myTest();
echo $y;
PHP Static 作用域
PHP 當一個函式完成時,它的所有變數通常都會被刪除。為了有些區域性變數不被刪除,可以在第一次宣告變數的時候使用 static
關鍵字。
<?php
function myTest()
{
static $x = 0;
echo $x;
$x++;
echo PHP_EOL;
}
myTest();
myTest();
myTest();
引數作用域(形參)
引數宣告作為函式宣告的一部分。
<?php
function myTest($x)
{
echo $x;
}
myTest('Galois');
myTest(8888);
小補充:
列印陣列方式:
echo '<pre>';
print_r($arr);
本作品採用《CC 協議》,轉載必須註明作者和本文連結