Laravel 5.5 has introduced 2 new methods on collections class which makes debugging easier than before.
Lets take example of simple collection setup and pipe through some filters.
1 2 3 4 5 | collect([1,2,3])->map( function ( $i ){ return $i * 2; })->reject( function ( $i ){ return $i < 3; }); |
One can now get to know what happens on each step of chain and has option to either “dump” or “dump-and-die” at any step of chain.
1 2 3 4 | collect([1,2,3])->map( function ( $i ){ return $i * 2; })->dump()->reject( function ( $i ){ return $i < 3; }); |
dump() outputs the result and continue processing. Above code will result:
1 2 3 4 5 6 7 | Collection {#181 ▼ #items: array :3 [▼ 0 => 2 1 => 4 2 => 6 ] } |
dd() will simple dump and stop execution from that point only.
1 2 3 4 5 | collect([1,2,3])->map( function ( $i ){ return $i * 2; })->dd()->reject( function ( $i ){ return $i < 3; }); |
will result in to:
1 2 3 4 5 | array :3 [▼ 0 => 2 1 => 4 2 => 6 ] |
Thanks for sharing these tips! I am sure your tips really helpful!