Collections 支援 dd 跟 dump 啦!( Laravel 5.5 新功能早知道)

JokerLinly發表於2017-06-27

file
即將到來的 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:

參考連結:https://laravel-news.com/dd-and-dump-collections

Stay Hungry, Stay Foolish.

相關文章