我在使用全局变量时遇到一些错误。 我在全局范围内定义了一个$ var并尝试在函数中使用它但在那里无法访问它。请参阅以下代码以获得更好的解释:
档案a.php:
<?php
$tmp = "testing";
function testFunction(){
global $tmp;
echo($tmp);
}
关于如何调用此函数的一些内容。
文件b.php:
<?php
include 'a.php'
class testClass{
public function testFunctionCall(){
testFunction();
}
}
使用以下方法调用上述'b.php':
$method = new ReflectionMethod($this, $method);
$method->invoke();
现在所需的输出是'测试'但接收的输出是NULL。
提前感谢您的帮助。
我觉得这与使用ReflectionMethod有关,但我无法理解为什么它不可用的原因。
答案 0 :(得分:0)
这对我来说很好。的 [TESTED] 即可。还有什么阻止你通过引用使用呼叫?
<?php
$tmp = "testing";
function testFunction(){
global $tmp;
echo($tmp);
}
class testClass
{
public function testFunctionCall(){
testFunction();
}
}
$method = new ReflectionMethod($this, $method);
$method->testFunctionCall();