【发布时间】:2009-09-07 17:46:15
【问题描述】:
我有一个层次很大的函数:
function func(){
$a= 0; // Here the variable is 0
while(...){
echo $a; // gives me always 0
for(...){
if(...){
if(...){
$num = func3();
$a = $num; // this $a does not corrospond to $a in the beginning
}
}
}
}
}
有谁知道我可以如何从嵌套范围更改$a 的值?
【问题讨论】:
-
不是要打败 PHP,而是认真的?该代码不会更改
func()中声明的$a的值吗?如果是这样,那就太疯狂了。我真的很重视解释 为什么 PHP 会做这样的事情的答案。对我来说似乎真的,真的很奇怪。 -
我认为这个示例代码和您的代码之间存在差异,因为这肯定可以工作。
-
或者 func3() 总是返回 0
-
请发布真实代码,因为此代码设置 $a = func3() 的次数与 while 和 for 循环运行的次数一样多(减去 if 条件)。