{{PHP}}变量作用域测试(待续)
{{PHP}}变量作用域测试//1
<?php
$foo = 'tip1';
function f() {
global $foo;
print $foo;
$foo = 'foo';
print $bar;
}
f();
输出为:
:!php test.php
tip1
Notice: Undefined variable: bar in /home/zhanhailiang/test.php on line 35
//2
<?php
$foo = 'tip1';
function f() {
print $foo;
$foo = 'foo';
print $bar;
}
f();
输出为:
:!php test.php
Notice: Undefined variable: foo in /home/zhanhailiang/test.php on line 32
Notice: Undefined variable: bar in /home/zhanhailiang/test.php on line 34
//3
<?php
$foo = 'tip1';
function f() {
$foo = 'foo';
print $foo;
print $bar;
}
f();
输出为:
:!php test.php
foo
Notice: Undefined variable: bar in /home/zhanhailiang/test.php on line 34
//1
在函数内通过global声明访问全局作用域内的变量,这在PHP中被称为变量的跨域操作
$bar未定义,所以报错
//2
PHP不允许在函数内未通过global声明访问全局作用域内的变量
$bar未定义,所以报错
//3
不解释,原因显然
页:
[1]