PHP变量作用域

PHP变量作用域

  • local:局部变量,函数内部定义的变量;

  • global:全局变量,可在任何地方使用;

  • static:静态变量,又分为静态局部变量和静态全局全量:

    • 静态局部变量:一种特殊的局部变量,值不会随着函数的调用和退出发生变化,只能在函数内部使用;不管其所在的函数是否被调用,其都会一直存在,但不能使用它,只有当调用其所在的函数时,才可以继续使用;
    • 静态全局变量:声明全局变量时前面加上static关键字,就变成静态全局变量;
  • parameter:参数作用域,通过调用代码将值传递给函数的局部变量;

全局变量:

// 全局变量
$a = 1;
$b = 2;

function my_func()
{
    // 使用全局变量前 要加上global关键字
    global $a, $b;
    echo $a + $b;
}

my_func();

静态变量:可以在任何可以声明的地方声明,在之后的运行中,始终保持最后一次声明时的赋值;静态变量并非不能改变其值,其拥有的值是可变的,而是始终保持最新的赋值;静态,指的是变量的值不会随着函数的调用和退出而发生变化。

function testStatic()
{
    static $val = 1;
	// 即便此处的条件不成立 也可以声明静态变量
    if(1 == 2){
        static $val = 2;
    }
    echo $val;

    $val++;
    echo "<br/>";
}
testStatic();   //output 2
testStatic();   //output 3
testStatic();   //output 4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值