PHP-全局变量
程序员文章站
2024-01-21 23:22:52
...
全局变量用关键字:global,如声明一个全局变量: global = $x;
函数之外声明的变量具有global作用域,只能在函数之外进行访问;函数之内声明的变量具有local作用域,只能在函数之内进行访问;
如果全局变量要在函数之内进行访问,需要在变量前加global,例如:
<?php
$x=5; // 全局作用域
function myTest() {
$y=10; // 局部作用域
echo "<p>测试函数内部的变量:</p>";
echo "变量 x 是:$x";//打印出来会报错
echo "<br>";
echo "变量 y 是:$y";
}
myTest();
echo "<p>测试函数之外的变量:</p>";
echo "变量 x 是:$x";
echo "<br>";
echo "变量 y 是:$y";//打印出来会报错
?>
在函数中正确使用全局变量:
<?php
$x=5;
$y=10;
function myTest() {
global $x,$y;
$y=$x+$y;
}
myTest();
echo $y; // 输出 15
?>
实际上,全局变量申明后,会生成一个全局变量数组$GLOBALS[index];下标存有变量名。这个数组在函数内也可以访问,并能够用于直接更新全局变量。
例如:
<?php
$x=5;
$y=10;
function myTest() {
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}
myTest();
echo $y; // 输出 15
?>