使用 macro() 擴充套件集合

macro() 函式允許你向 Illuminate\Support\Collection 物件新增新功能

用法:

Collection::macro("macro_name", function ($parameters) {
    // Your macro
});

例如:

Collection::macro('uppercase', function () {
    return $this->map(function ($item) {
        return strtoupper($item);
    });
});

collect(["hello", "world"])->uppercase();

結果:["HELLO", "WORLD"]