PHP 变量的四大作用域
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 协议》,转载必须注明作者和本文链接
推荐文章: