laravel中集合和陣列的差別是什麼?
高洛峰
高洛峰 2017-05-16 16:46:40
0
2
495

laravel中集合和陣列的差別是什麼?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回覆(2)
曾经蜡笔没有小新

Laravel中的數組,原始碼位置IlluminateSupportArr.php;

Laravel中的集合,原始碼位置IlluminateSupportCollection.php;

集合是對數組的再次封裝,以對象的形式呈現;提供了很多方法功能(這些方法內部大多採用了回調函數),比數組形式的操作要靈活多了;

本質上就是用物件導向的形式操作元素和以陣列形式操作元素的區別;如果以物件操作,如vika_倾慕說的,可以鍊式操作;如果按照陣列操作,會產生很多中間臨時變數或語句,程式碼顯得冗長;

洪涛

集合比數組更強大的地方是其使用了各種 map / reduce 的直觀操作,例如,我們移除所有未激活的用戶模型和收集其餘各個用戶的名字:

$users = App\User::where('active', 1)->get();

$names = $users->reject(function ($user) {
    return $user->active === false;
})
->map(function ($user) {
    return $user->name;
});

如果覺得可以,記得採納

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!