PHP 變數的四大作用域

2020-07-16 10:06:06
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);

相關推薦:php教學

以上就是PHP 變數的四大作用域的詳細內容,更多請關注TW511.COM其它相關文章!