Collections 支持 dd 跟 dump 啦!( Laravel 5.5 新功能早知道)
即将到来的 Laravel 5.5 的 Collections 类上新增了两个方法 dd 和 dump,能让代码的调试变得比以前更加容易。:tada:
简单介绍
假设有一个简单的集合,需要使用几个方法过滤之后再输出:
collect([1,2,3])->map(function($i){
return $i * 2;
})->reject(function($i){
return $i < 3;
});
在这种情况下,如果你想知道程序进行的每一步中会发生什么事情可能会很麻烦。可是现在!你可以选择在某一时刻「dump」出去,或者「dd」出去。 例如:
collect([1,2,3])->map(function($i){
return $i * 2;
})->dump()->reject(function($i){
return $i < 3;
});
dump()
输出结果,然后继续执行程序,下面是运行该代码时的结果:
Collection {#181 ▼
#items: array:3 [▼
0 => 2
1 => 4
2 => 6
]
}
而 dd()
会立即停止进程并「dump」出结果:
collect([1,2,3])->map(function($i){
return $i * 2;
})->dd()->reject(function($i){
return $i < 3;
});
结果:
array:3 [▼
0 => 2
1 => 4
2 => 6
]
这两个函数将会成为 Laravel 5.5 中受欢迎的功能之一。如果你现在就想开始使用这些功能,可以查看 Spatie 发布的一个名为 Collection Macros 的第三方软件包,这里面包含了上述两种方法以及一些其他的辅助函数。Just enjoy IT! :rose:
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: