我正在使用Moodle,还有很多全局变量,似乎没有适当的文档。首先,我想“只是看看echo "<pre>",print_r($GLOBALS,1),"</pre>";
会产生什么”。但是当我尝试它时,我的浏览器在渲染时变得没有响应,并且渲染结果很乱。不幸的是我没有可能使用调试器,因为xdebug包不适用于我正在使用的发行版。 (交钥匙Moodle设备)
所以我的问题是:有没有办法只查看所有全局变量的名称,以便我可以单独检查它们?
答案 0 :(得分:2)
也许是array_keys($ GLOBALS)&amp;
答案 1 :(得分:2)
最简单的答案 - 打开lib / setup.php,向下滚动到约418行,它们都在那里定义。
虽然您正在使用它,Moosh也可以生成一个文件,允许自动完成所有$ CFG-&gt; Moodle网站中的变量(不直接回答问题,但密切相关)。
答案 2 :(得分:1)
使用get_defined_vars()获取该范围内的所有变量,这些变量可以在所有脚本中或在特定函数中。
echo '<pre>';
print_r(get_defined_vars());
答案 3 :(得分:0)
正如您所指出的,$GLOBALS
实际上是查看所有全局变量的方法。
你的脚本死的原因是因为你有大量的变量,而且每个变量都有很多子对象(甚至可能是递归的)。
如果您只想要变量的名称列表,请执行var_dump(array_keys($GLOBALS))
。