PHP中函数内引用全局变量的方法

网络整理 - 08-19

先看下面的代码:

$var1 = "#####";

$var2 = "&&&&&";

function global_references($use_globals) {

global $var1, $var2;

if (!$use_globals) {

$var2 =&$var1; //1

} else {

$GLOBALS["var2"] =&$var1; //2

}

}

global_references(false);

echo "var2 is set to '$var2'

";

global_references(true);

echo "var2 is set to '$var2'

";

?>

输出的结果如下:

var2 is set to '&&&&&'

var2 is set to '#####'

可见,上面的代码中:

$var2 =&$var1; //1

只对函数内部可见。

$GLOBALS["var2"] =&$var1; //2

在全局范围内可见。