gpt4 book ai didi

php - 如何编写与 laravel 相同的 DD() 函数?

转载 作者:可可西里 更新时间:2023-11-01 12:23:03 27 4
gpt4 key购买 nike

我使用 laravel 很长时间,但目前我使用 wordpress。我喜欢使用 laravel 的 DD() 函数。但是在wordpress中我只能使用这些,

   print_r(),
var_dump(),
var_export()....

这些都是展开整个数组对象。但是我需要 laravel 的 expandclose 机制来处理数组和对象。我将以下内容用作一般dd 需要,

if (!function_exists('dd')) {
function dd()
{
echo '<pre>';
array_map(function($x) {var_dump($x);}, func_get_args());
die;
}
}

它运作良好,但我需要一种风格化且有条理的列表形式。

这可能吗?

最佳答案

Laravel 的 dd 使用 symfony 的 VarDump component .它提供了一个全局可用的 dump 函数来格式化输出。唯一的区别是它不会在转储后“死掉”,您必须手动执行此操作 - 但在大多数情况下,这甚至不是您想要的。

  1. 运行 composer global require symfony/var-dumper(假设你的 wordpress 项目中有 composer)
  2. 添加 auto_prepend_file = ${HOME}/.composer/vendor/autoload.php 到您的 php.ini 文件;
  3. 时常运行 composer global update symfony/var-dumper 以修复最新的错误。

这是 VarDumper 组件的文档。 https://symfony.com/doc/current/components/var_dumper.html

symfony/var-dumper 版本 >= 4.1:

从 var-dumper 版本 4.1 开始,dd() 已经声明。加载库就足够了。


symfony/var-dumper 版本 <= 4.0:

声明一个 dd 函数,转储所有参数并停止进程:

if (!function_exists('dd')) {
function dd()
{
foreach (func_get_args() as $x) {
dump($x);
}
die;
}
}

关于php - 如何编写与 laravel 相同的 DD() 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41669246/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com