如何在类函数中获取所有已定义的全局变量?
当我在类方法中调用get_defined_vars()
函数时,我只得到一个空对象。
答案 0 :(得分:11)
via => Define variables outside the PHP class
class Foo {
function bar(){
var_dump($GLOBALS);
}
}
Foo::bar();
输出:
array(8) {
["GLOBALS"]=>
array(8) {
["GLOBALS"]=>
*RECURSION*
["_POST"]=>
array(0) {
}
/*snip*/
答案 1 :(得分:1)
如果您需要预定义变量&,请使用get_class_vars(__CLASS__)
值(在对象初始化之前定义并设置为默认值的那些值)。
如果您想要所有变量(实例变量),包括在执行该类的任何方法时为特定对象临时创建的变量,请使用get_object_vars($this)
。
我知道这些并不是你需要的东西。它需要你$GLOBALS
的答案。但我只是提供了这些方法供您参考,以便将来有用。
答案 2 :(得分:0)
也许你可以试试get_class_vars()
?