猿问
请问为什么以下代码输出输出为1 2 3 ?不是很理解
function foo() { static $a; $a++; echo "$a\n"; unset($a); } foo(); foo(); foo();
青春有我
浏览 121
回答 1
1回答
肥皂起泡泡
1,$a是静态成员,生命期和进程一样,所以每次进到foo函数访问到的都是同一个2,每次调用$a都进行了++操作3,unset函数调用采用的是形参方式,并不会修改$a的值。所以每次调用,$a的值加1,所以是123
0
0
0
随时随地看视频
慕课网APP
相关分类
Java
JavaScript
我要回答