PHP:类外的静态变量
我在第三方代码中看到过一个声明为静态的变量,但在任何类之外,只是在一个“普通”函数中PHP:类外的静态变量,php,static,Php,Static,我在第三方代码中看到过一个声明为静态的变量,但在任何类之外,只是在一个“普通”函数中 <?php function doStuff(){ static $something = null; } ?> 我从来没有见过这样使用static,在PHP文档中也找不到它 这是合法的PHP代码吗?这实际上与全局变量相同吗?如果没有,目的是什么 变量作用域的另一个重要特征是静态变量。 静态变量只存在于局部函数作用域中,但它确实存在 当程序执行离开此范围时,不会失去其价值 <?p
<?php
function doStuff(){
static $something = null;
}
?>
我从来没有见过这样使用static
,在PHP文档中也找不到它
这是合法的PHP代码吗?这实际上与全局变量相同吗?如果没有,目的是什么
变量作用域的另一个重要特征是静态变量。
静态变量只存在于局部函数作用域中,但它确实存在
当程序执行离开此范围时,不会失去其价值
<?php
function test()
{
static $a = 0;
echo $a;
$a++;
}
?>
现在,$a只在函数的第一次调用中初始化,每次
调用test()函数,它将打印$a和
增加它
@弗雷泽:不。“它只初始化了一次。”弗雷泽我引用了PHP手册中的全部答案。如果你不同意,请与他们联系:)。我会恳请投票人陈述他的理由——我很乐意改进我的答案。