static $myvar = $my_array[3];
到目前为止,我从未需要使用静态功能。但我需要使用它来存储function
或array
的返回值:
static $myvar = $my_array[3];
static $myvar = my_func();
为什么我不能这样使用它?静态只用于整数?
答案 0 :(得分:2)
我不确定你是否在寻找这个:
function foo() {
static $counter;
if(!$counter) {
$counter = 0;
}
$counter++;
echo $counter;
}
请注意,除了在OOP编程中的用法之外,static关键字可用于在应该只初始化一次的函数体中声明static variables。
因此调用foo()
会给您以下输出,因为$counter
仅在第一次调用foo()
时初始化:
foo(); // 1
foo(); // 2
答案 1 :(得分:0)
静态用于OOP
答案 2 :(得分:0)
看起来你没有正确使用它。请参阅PHP.net: Static Keyword。你需要在课堂上使用它。我不确定您是否需要指定public
private
protected
。
答案 3 :(得分:0)