2

Xdebug 发送给远程调试客户端的变量值的最大字符串长度是多少,可以更改吗?

我只在文档中找到了这个:

xdebug.var_display_max_data 类型:整数,默认值:512 控制使用 xdebug_var_dump()、xdebug.show_local_vars 或通过函数跟踪显示变量时显示的最大字符串长度。此设置对通过远程调试功能发送到客户端的数据量没有任何影响。

我正在使用以编程方式构建整个 HTML 文档的代码(elgg、elglib.php->elgg_view_layout()),我需要查看的变量值似乎被截断了。

我正在运行从 PECL 安装的 OSX 10.6.7、PHP 5.3.4、Xdebug 2.1.1。

4

1 回答 1

3

据我了解,这取决于您使用的调试客户端。

如果您的调试客户端使用 Xdebug 2 的DGBP协议,它可以发送

feature_set -i <transaction_id> -n max_data -v 2048

例如,协商最大数据长度为 2048 字节,以便property_get命令最初检索(而不是调试引擎在其他情况下使用的默认长度)。

如果数据大于 2048 字节,调试客户端可以发送property_value命令来检索整个数据。

所以从技术上讲,改变最大长度应该没有问题,也不能检索整个数据。

问题是,您的调试客户端是否发送此类feature_set命令,是否支持property_value命令,最重要的是,它是否允许您修改max_data在其设置/配置中的任何位置发送的值。

于 2011-04-21T21:58:06.430 回答