我想使用PHP声明一个全局变量,并在函数内部使用。
我试过了:
$var = "something";
function foo()
{
echo $var;
}
但是我收到一条错误,指出$var
未定义。
我该如何解决这个问题?
答案 0 :(得分:7)
$var = "something";
function foo()
{
global $var;
echo $var;
}
当您需要使用在函数范围之外声明的变量时,请使用术语“全局”。
答案 1 :(得分:5)
PHP变量具有函数范围。即,函数内部的变量不能从外部访问,并且全局变量不能(默认情况下)从内部函数访问。虽然在函数中使用global
关键字来导入变量是 a 解决方案,但是你不应该这样做。功能应该是独立的;如果你需要一个函数内的值pass it as a parameter,如果函数需要修改全局值,那么return
来自函数。
示例:
function foo($arg)
{
echo $arg;
}
$var = "something";
foo($var);