gpt4 book ai didi

php - 全局变量在 php 中不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:35:43 24 4
gpt4 key购买 nike

我在使用全局变量时遇到了一些错误。我在全局范围内定义了一个 $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。

在此先感谢您的帮助。

最佳答案

您错过了调用您的函数并删除了 protected 关键字。

试试这个

<?php

$tmp = "testing";

testFunction(); // you missed this

function testFunction(){ //removed protected
global $tmp;
echo($tmp);
}

相同的代码,但使用 $GLOBALS,得到相同的输出。

<?php

$tmp = "testing";

testFunction(); // you missed this

function testFunction(){ //removed protected
echo $GLOBALS['tmp'];
}

关于php - 全局变量在 php 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18848348/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com