在PHP中从函数内部访问全局变量

在PHP中从函数内部访问全局变量,php,global-variables,Php,Global Variables,我想用PHP声明一个全局变量,并在函数中使用 我试过: $var = "something"; function foo() { echo $var; } 但是我收到一个错误,指出$var未定义 我怎样才能解决这个问题 $var = "something"; function foo() { global $var; echo $var; } 当需要使用在函数范围之外声明的变量时,请使用术语“全局”。PHP变量具有函数范围。也就是说,函数内部的变量不能从函数外部访问,

我想用PHP声明一个全局变量,并在函数中使用

我试过:

$var = "something";
function foo()
{
    echo $var;
}
但是我收到一个错误,指出
$var
未定义

我怎样才能解决这个问题

$var = "something";
function foo()
{
    global $var;
    echo $var;
}

当需要使用在函数范围之外声明的变量时,请使用术语“全局”。

PHP变量具有函数范围。也就是说,函数内部的变量不能从函数外部访问,全局变量(默认情况下)不能从函数内部访问。虽然在函数中使用
global
关键字来im-/export变量是一种解决方案,但您不应该这样做。功能应该是独立的;如果您需要函数中的值,如果函数需要修改全局值,
从函数返回它们

例如:

function foo($arg)
{
    echo $arg;
}
$var = "something";
foo($var);

请阅读:

@Gordon+1了解更多信息。但是,当然,
global
最终再次获胜。sigh@Gordon我想你用“依赖注射”把他吓跑了,他想要一个小手指,而你却把整个手臂都扔给了他;o) 建议的方法通常是“不要那样做”,例如。