Xdebug远程调试可变字符串长度
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。
What is the maximum string length for variables' values that Xdebug sends a remote debugging client and can this be altered?
I've only found this in the documentation:
xdebug.var_display_max_data Type:
integer, Default value: 512 Controls
the maximum string length that is
shown when variables are displayed
with either xdebug_var_dump(),
xdebug.show_local_vars or through
Function Traces. This setting does
not have any influence on the amount
of data that is send to the client
through the Remote Debugging
feature.
I'm working with code that is building whole HTML documents programmatically (elgg, elglib.php->elgg_view_layout()) and the variable values I need to watch seem to be getting truncated.
I'm running OSX 10.6.7, PHP 5.3.4, Xdebug 2.1.1 installed from PECL.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
据我了解,这取决于您使用的调试客户端。
如果您的调试客户端使用 Xdebug 2 的 DGBP 协议,它可以发送
例如为
property_get
命令协商初始检索的最大数据长度为 2048 字节(而不是调试引擎否则使用的默认长度)。如果数据大于 2048 字节,调试客户端可以发送
property_value
命令来检索整个数据。因此从技术上讲,更改最大长度或检索整个数据应该没有问题。
问题是,您的调试客户端是否发送此类
feature_set
命令,是否支持property_value
命令,最重要的是,它是否允许您修改为max_data 发送的值
其设置/配置中的任何位置。To my understanding, it depends on the debug client you use.
If your debug client uses the DGBP protocol of Xdebug 2, it could send
for example, to negotiate a maximum data length of 2048 bytes for
property_get
commands to initially retrieve (instead of the default length the debug engine would use otherwise).If the data is larger than 2048 bytes, the debug client could send a
property_value
command to retrieve the entire data.So technically it should be no problem to alter the maximum length, nor to retrieve the entire data.
The question is, does your debug client send such
feature_set
commands, does it supportproperty_value
commands and most important, does it allow you to modify the value sent formax_data
anywhere in its settings/configuration.