访问函数内的全局变量
在 PHP 中,访问函数内的全局变量存在一定的挑战。考虑以下代码:
<br>$sxml = new SimpleXMLElement('<somexml></somexml>');<p>function foo(){</p><pre class="brush:php;toolbar:false">$child = $sxml->addChild('child');
}
foo();
此代码尝试从内部访问全局变量 $sxml函数 foo(),但失败了。 PHP 中的函数有自己的局部作用域,默认情况下无法访问全局作用域的变量。
要访问函数内的全局变量,有以下几种选项:
将全局变量作为参数传递:
您可以将全局变量作为参数传递给函数,允许其访问
function foo($sxml){ $child = $sxml->addChild('child'); } foo($sxml);
将全局变量声明为全局变量:
您可以使用以下命令将全局变量声明为函数内的全局变量:全局关键字。
function foo(){ global $sxml; $child = $sxml->addChild('child'); } foo();
使用闭包:
PHP 中的闭包允许您访问函数内的外部变量。
function foo() use (&$sxml) { $child = $sxml->addChild('child'); } foo();
以上是如何在 PHP 函数中访问全局变量?的详细内容。更多信息请关注PHP中文网其他相关文章!