本文實例講述了Laravel框架集合用法。分享給大家供大家參考,具體如下:
前言
集合通過 Illuminate\Support\Collection
進行實例,Laravel的內(nèi)核大部分的參數(shù)傳遞都用到了集合,但這并不代表集合就是好的。Laravel作為快捷并優(yōu)雅的開發(fā)框架,是有他一定的道理所在的,并非因他的路由、DB、監(jiān)聽器等等。當你需要處理一組數(shù)組時,你可能就需要它幫助你快捷的解決實際問題。
創(chuàng)建集合
$collection = collect([1, 2, 3]);
顯而易見,這是一部非常簡單的操作,請打住你想說“這種操作很復雜”的話,它更類似與早起PHP5.x的版本的聲明方式。
$collection = array(1,2,3);
laravel對于collection也沒有做任何復雜的事情,會在下一章 《Laravel源碼解析之集合》,謝謝
打回原型
如果你想將集合轉(zhuǎn)換為數(shù)據(jù),其使用方法也非常的簡單
collect([1, 2, 3])->all();
------>
[1, 2, 3]
在不過與考慮性能的情況下,可以使用Laravel集合,畢竟它將幫你完成數(shù)組操作的百分之九十的工作。
例如我們需要通過一個水平線切分數(shù)組,將其分為2個及以上的數(shù)組個數(shù)。使用集合可以醬紫做~
$collection = collect([1, 2, 3, 4, 5, 6, 7]);
$chunks = $collection->chunk(4);
$chunks->toArray();
// [[1, 2, 3, 4], [5, 6, 7]]
并且有些還根據(jù)sql語句的查詢方式來設計的方法,下面就讓來看下具體都有哪些吧。
方法列表
這里列出一些常用的集合操作方法,具體及全部請操作官方。
方法 |
注釋 |
all |
將集合打回原型 |
average avg |
計算平均值 |
chunk |
將集合拆成多個指定大小的小集合 |
collapse |
將多個數(shù)組的集合合并成一個數(shù)組的集合 |
combine |
可以將一個集合的值作為「鍵」,再將另一個數(shù)組或者集合的值作為「值」合并成一個集合 |
concat |
將給定的數(shù)組或集合值附加到集合的末尾 |
contains |
判斷集合是否包含給定的項目 |
count |
返回該集合內(nèi)的項目總數(shù) |
dd |
打印集合的項目并結(jié)束腳本執(zhí)行 |
diff |
將集合與其它集合或純 PHP 數(shù)組進行值的比較,然后返回原集合中存在而給定集合中不存在的值 |
each |
迭代集合中的內(nèi)容并將其傳遞到回調(diào)函數(shù)中 |
filter |
使用給定的回調(diào)函數(shù)過濾集合的內(nèi)容,只留下那些通過給定真實測試的內(nèi)容 |
first |
返回集合中通過給定真實測試的第一個元素 |
groupBy |
根據(jù)給定的鍵對集合內(nèi)的項目進行分組 |
push |
把給定值添加到集合的末尾 |
put |
在集合內(nèi)設置給定的鍵值對 |
sortBy |
通過給定的鍵對集合進行排序。排序后的集合保留了原數(shù)組鍵 |
where |
通過給定的鍵值過濾集合 |
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門與進階教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。
您可能感興趣的文章:- Laravel框架源碼解析之模型Model原理與用法解析
- Laravel框架源碼解析之入口文件原理分析
- Laravel框架源碼解析之反射的使用詳解
- Laravel 框架控制器 Controller原理與用法實例分析
- Laravel框架數(shù)據(jù)庫CURD操作、連貫操作總結(jié)
- PHP開發(fā)框架Laravel數(shù)據(jù)庫操作方法總結(jié)
- Laravel框架中擴展函數(shù)、擴展自定義類的方法
- Laravel框架路由配置總結(jié)、設置技巧大全
- Laravel 5 框架入門(一)
- Laravel 5框架學習之數(shù)據(jù)庫遷移(Migrations)
- Laravel 5框架學習之向視圖傳送數(shù)據(jù)
- Laravel 5框架學習之用戶認證