0

出于某种原因,在定义时:

 function __construct() {
    if(!isset($_GLOBALS["className"])) {
      $_GLOBALS["className"] = new className;
    }
    return true;
  }

 $_GLOBALS["className"]->classMethod();

PHP 出于某种原因声明 $_GLOBALS["className"] 未定义。

哦,即使我在该类中将全局值设置为其他值,也会发生同样的情况。我可以通过构造或其他方法来测试全局的值,但不能在外面测试——似乎全局由于某种原因在类之外丢失了。

从外部类中声明全局后,有没有办法保留全局?真诚感谢任何帮助!

4

1 回答 1

4

你想使用$GLOBALS而不是$_GLOBALS

http://php.net/manual/en/reserved.variables.globals.php

$_GLOBALS将仅在您的功能范围内可用。

于 2012-05-09T22:21:11.827 回答