如何检查PHP中定义的常量?

时间:2009-12-08 01:39:41

标签: php debugging constants xdebug

我在NetBeans中使用Xdebug逐步执行CodeIgniter的源代码,我正在寻找一种方法来查看定义的常量。如果不可能,还有其他方法可以显示所有已定义的常量吗?

4 个答案:

答案 0 :(得分:14)

查看get_defined_constants功能。它将返回代码中所有已定义常量的数组,直到函数调用为止。然后,您可以使用print_r打印出阵列。

答案 1 :(得分:5)

我使用的这种做法相当不错,因为它只显示自定义/用户创建的常量。

print_r(var_export(get_defined_constants(true)['user'], true));

将其包含在预标签内或只查看源代码,您将获得所定义的所有内容的非常好的数组。

请注意,这不适用于php 5.3。*其中5.4。*输出正常。

在早期版本的php中,必须先将get_defined_constants()分配给变量,然后再输出。 像这样的东西。

$gdc = get_defined_constants(true);
print_r( var_export($gdc['user'], true) );

答案 2 :(得分:3)

你可能想要适应:

$arr = get_defined_vars();

答案 3 :(得分:1)

我能找到的最好的是在调试模式下按F7(步入)以执行常量线。

define('SOME_CONSTANT','VALUE');

然后双击“SOME_CONSTANT”,右键单击并选择添加新手表(快捷键:shift + ctrl + F7),添加新的观察窗口将显示常量预填充,选择回车,您应该看到您的常量值在变量中(如果您选择了蓝色菱形“在变量视图中显示手表”)&手表窗口面板。

同样非常方便,您可以将鼠标悬停在变量上以查看其值,而不是查看调试>变量窗口面板......只需要打开它,因为它默认关闭...显然有错误......使用最新的xdebug,到目前为止对我来说还不错。

工具>选项> PHP> “一般标签”>调试部分>检查手表和气球评估

希望这在2年后仍然有用。