请问PHP中的静态变量怎么理解?
例子如下:<?phpfunctionzdy(){static$message=0;$message+=1;echo$message."";}functionzdy1(){...
例子如下:
<?php
function zdy(){
static $message=0;
$message+=1;
echo $message." ";}
function zdy1(){
$message=0;
$message+=1;
echo $message." ";}
for($i=0;$i<0;$i++) zdy();
echo "<br>";
for($i=0;$i<10;$i++) zdy1();
echo"<br>";
?>
结果为:1 2 3 4 5 6 7 8 9 10
1 1 1 1 1 1 1 1 1 1 展开
<?php
function zdy(){
static $message=0;
$message+=1;
echo $message." ";}
function zdy1(){
$message=0;
$message+=1;
echo $message." ";}
for($i=0;$i<0;$i++) zdy();
echo "<br>";
for($i=0;$i<10;$i++) zdy1();
echo"<br>";
?>
结果为:1 2 3 4 5 6 7 8 9 10
1 1 1 1 1 1 1 1 1 1 展开
推荐于2016-05-23 · 知道合伙人软件行家
关注
展开全部
static 变量是php中的变量作用范围的一个重要特性
静态变量仅在局部函数域中存在且只被初始化一次,当程序执行离开此作用域时,其值不会消失,会使用上次执行的结果
一个普通的变量,如 $message 在它所在的函数执行完之后就被释放了
即第二个function执行10次,每次执行完后,$message变量被释放,所以每次都是1
变量前加了static后,该变量在它所在的函数执行完后不会被释放
即第一个function每次被执行后,static $message没有被释放,它将被继续累加
静态变量仅在局部函数域中存在且只被初始化一次,当程序执行离开此作用域时,其值不会消失,会使用上次执行的结果
一个普通的变量,如 $message 在它所在的函数执行完之后就被释放了
即第二个function执行10次,每次执行完后,$message变量被释放,所以每次都是1
变量前加了static后,该变量在它所在的函数执行完后不会被释放
即第一个function每次被执行后,static $message没有被释放,它将被继续累加
Storm代理
2023-08-29 广告
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询