yiisoft/var-dumper

增强 var_dump() 和 var_export() 的功能。处理递归引用,可能突出显示语法和导出闭包。

1.7.0 2023-10-08 11:21 UTC

This package is auto-updated.

Last update: 2024-08-24 14:37:42 UTC


README

Yii

Yii VarDumper


Latest Stable Version Total Downloads Build Status Scrutinizer Code Quality Code Coverage Mutation testing badge static analysis type-coverage

VarDumper 增强 var_dump()var_export() 的功能。它处理递归引用,可能突出显示语法并导出闭包。

要求

  • PHP 8.0 或更高版本。

安装

可以使用 Composer 安装此包。

composer require yiisoft/var-dumper

通用用法

快速调试

如果您想输出表示变量内容的字符串,请使用以下代码

\Yiisoft\VarDumper\VarDumper::dump($variable);

这对于快速调试很有用。默认情况下,它会深入变量 10 层并突出显示语法。您可以通过方法的不同参数来调整这些设置。

为了方便,您可以使用以下函数

// Prints variables:
d($variable, /* Further variables to dump. */);
// The same as above
dump($variable, /* Further variables to dump. */);

// Prints variables and terminate the current script:
dd($variable, /* Further variables to dump. */);

格式化调试字符串

获取表示变量内容的字符串,与上面相同,但不含 echo

$string = \Yiisoft\VarDumper\VarDumper::create($variable)->asString(10, true);

10 是最大递归深度,true 是告诉导出器突出显示语法。

导出为 PHP 代码

要获取一个有效的 PHP 表达式字符串,该字符串可以被 PHP 解析器评估,评估结果将返回变量值,请使用以下代码

$string = \Yiisoft\VarDumper\VarDumper::create($variable)->export();

它与 var_export() 类似,但使用短数组语法,处理闭包并序列化对象。

在上述 export() 将为您提供格式良好的代码。您可以通过将 false 作为第一个 $format 参数传递来移除格式。

$useVariables 参数允许指定一个数组,该数组将包含闭包的 use 语句中的变量。这对于包含应从上级作用域获取信息的回调的对象特别有用。

$serializeObjects 参数当给定 false 时,允许强制关闭对象序列化,从而使用与导出闭包相同的反射 API 使用闭包和反射 API。反序列化性能更好。闭包更易于阅读。

导出为 JSON 字符串

$string = \Yiisoft\VarDumper\VarDumper::create($variable)->asJson();

它与 json_encode() 类似,但使用短数组语法,处理闭包并序列化对象。

在上述 asJson() 将为您提供格式良好的代码。您可以通过将 false 作为第一个 $format 参数传递来移除格式。

$depth 参数允许您设置最大递归深度。

输出目的地

选择现有的类或创建一个新的类来控制“导出”发送到的目的地

  • EchoHandler
    • 使用 echo 将内容写入 stdout 流。
    • 默认使用。
  • StreamHandler
    • 使用 ext-sockets 将使用 json_encode 编码的导出发送到 UDP 套接字。
  • CompositeHandler
    • 有助于将导出发送到一系列处理器的类,例如 EchoHandlerStreamHandler

输出处理器通过 VarDumper::setDefaultHandler() 方法设置。

限制

当前限制包括

  • 不支持匿名类或包含匿名类的变量或属性。

文档

如果您需要帮助或有任何问题,您可以访问 Yii 论坛,那里是一个很好的提问和求助的地方。您还可以查看其他 Yii 社区资源

许可协议

Yii VarDumper 是免费软件。它遵循 BSD 许可协议发布。有关更多信息,请参阅 LICENSE

Yii 软件 维护。

支持项目

Open Collective

关注更新

Official website Twitter Telegram Facebook Slack