PHP 函数中使用static
通常情况下,关键字static是在类中使用,以static关键字修饰的属性或方法,仅所属类可以调用。但在PHP中,在函数中也可以使用static标识符。如:
function testStatic(){
static $tempVar=0;
$tempVar++;
echo $tempVar;
echo ' ';
}
for($i=0; $i<10 ; $i++){
testStatic();
}
//输出:1 2 3 4 5 6 7 8 9 10
static $tempVar=0;
$tempVar++;
echo $tempVar;
echo ' ';
}
for($i=0; $i<10 ; $i++){
testStatic();
}
//输出:1 2 3 4 5 6 7 8 9 10
在这种情况下,无论函数testStatic()调用多少次,函数内部static所修饰的变量$tempVar,只可以在函数内被调用,且只在第一次调用时被赋值,以后的调用会在之前的基础上进行改变。