php的静态局部变量
程序员文章站
2022-03-20 20:30:51
...
静态局部变量可以做到,该变量和全局变量保存在内存中同一区域,但是我们离开了声明该静态局部变量函数却不能访问到该变量,但是该变量并没有被销毁,它的值得到了保留。再次调用函数时它就再次可以访问到,需要注意的是:
1.静态局部变量声明时不能是表达式,是表达式会出错
1.静态局部变量声明时不能是表达式,是表达式会出错
static$index = 1;
static$index = 5; // 报错
2.赋值静态变量时不能使用表达式
static$index = 1 + 1; // 报错
3.如果我们只是声明了一个局部变量并没有赋值的化,会默认为其初始化一个0或者空字符串,根据其类型来确定到底是0还是空字符串
例子:
将数组降维(降到一维)
classTest{publicfunctionreduce_arr($arr) {static$temp = array(); // 声明了一个静态局部变量foreach ($arras$key => $val) {
if (is_array($val)) {
$this->reduce_arr($val);
} else {
$temp[$key] = $val;
}
}
return$temp;
}
}
$test = new Test();
$arr = array(
'0'=>array(
'good_id'=>1
),
'1'=>array(
'good_num'=>2
),
'2'=>array(
'good_ids'=>2
)
);
var_dump($test->reduce_arr($arr)); // 此时得到的是一个一维数组
').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i ').text(i));
};
$numbering.fadeIn(1700);
});
});
以上就介绍了php的静态局部变量,包括了全局变量,静态变量方面的内容,希望对PHP教程有兴趣的朋友有所帮助。