首页 > 编程笔记 > PHP笔记 阅读:1

PHP全局变量、局部变量和静态变量的用法(附带实例)

在 PHP 中,变量只有在定义后才能够被使用,但这并不意味着定义变量后就可以随时使用变量。变量只可以在其作用范围内被使用,这个作用范围称为变量的作用域。

在函数中定义的变量称为局部变量,函数执行完毕后,局部变量会被释放。在函数外定义的变量称为全局变量。

下面演示局部变量和全局变量的使用,示例代码如下:
function test()
{
    $sum = 36;        // 局部变量
    return $sum;
}
$sum = 0;               // 全局变量
echo test();          // 输出结果:36
echo $sum;            // 输出结果:0
在上述示例代码中,定义了函数 test(),在函数中定义了局部变量 $sum 的值为 36。第 6 行代码定义全局变量 $sum 的值为 0。第 7 行代码调用 test() 函数,输出的是局部变量 $sum 的值。第 8 行代码输出结果为 0,说明输出了全局变量 $sum 的值。

PHP静态变量

通过前面的学习可知,函数中的变量在函数执行完毕后会被释放。如果想在函数执行完毕后依然保留局部变量的值,可以利用 static 关键字在函数中将变量声明为静态变量。

下面定义一个实现计数功能的函数 num(),具体代码如下:
function num()
{
    static $i = 1;
    echo $i;
    ++$i;
}
在上述示例代码中,在变量 $i 前面添加 static 关键字,使变量 $i 成为静态变量。

调用 num() 函数,具体代码如下:
num();
第 1 次调用 num() 函数输出 1,第 2 次调用 num() 函数输出 2,依次类推。

相关文章