PHP和C的变量作用域区别:块作用域不完全相同?
以下 PHP 代码将输出 。3
function main() {
if (1) {
$i = 3;
}
echo $i;
}
main();
但以下 C 代码将引发编译错误。
void main() {
if (1) {
int i = 3;
}
printf("%d", i);
}
那么PHP中的变量不是严格意义上的块范围吗?在PHP中,在内部块中定义的变量可以在外部块中使用吗?