首頁 >php框架 >Laravel >Laravel集合的簡單理解

Laravel集合的簡單理解

不言
不言轉載
2018-10-22 14:22:313146瀏覽

這篇文章帶給大家的內容是關於Laravel集合的簡單理解,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

前言

集合透過 Illuminate\Database\Eloquent\Collection  進行實例,Laravel的核心大部分的參數傳遞都用到了集合,但這並不代表集合就是好的。 Laravel作為一個快速且優雅的開發框架,是有他一定的道理所在的,並非因他的路由、DB、監聽器等等。當你需要處理一組陣列時,你可能需要它來幫助你快速的解決實際問題。

建立集合

$collection = collect([1, 2, 3]);

顯而易見,這是一個非常簡單的操作,請打住你想說「這種操作很複雜」的話,它更類似與早起PHP5.x的版本的聲明方式。

$collection = array(1,2,3);

laravel對於collection也沒有做任何複雜的事情。

打回原型

如果你想將集合轉換為數據,其使用方法也非常的簡單

collect([1, 2, 3])->all();
------>
[1, 2, 3]

在不過與考慮效能的情況下,可以使用Laravel集合,畢竟它將幫你完成數組操作的百分之九十的工作。
例如我們需要透過一個水平線切分數組,將其分成2個及以上的陣列個數。使用集合可以醬紫做~

$collection = collect([1, 2, 3, 4, 5, 6, 7]);
$chunks = $collection->chunk(4);
$chunks->toArray();
// [[1, 2, 3, 4], [5, 6, 7]]

並且有些還根據sql語句的查詢方式來設計的方法,下面就讓來看下具體都有哪些吧。

方法清單

這裡列出一些常用的集合運算方法,具體及全部請操作官方。

方法 註解
all 將集合打回原型
average & avg 計算平均值
chunk 將集合拆成多個指定大小的小集合
collapse 將多個陣列的集合合併成一個陣列的集合
combine 可以將一個集合的值當作「鍵」,再將另一個陣列或集合的值作為「值」合併成一個集合
concat 將給定的陣列或集合值附加到集合的結尾
contains 判斷集合是否包含給定的項目
count 傳回該集合內的項目總數
dd 列印集合的項目並結束腳本執行
#diff 將集合與其它集合或純PHP 陣列進行值的比較,然後傳回原集合中存在而給定集合中不存在的值
each 迭代集合中的內容並將其傳遞到回呼函數中
filter 使用給定的回呼函數過濾集合的內容,只留下那些通過給定真實測試的內容
first 返回集合中通過給定真實測試的第一個元素
groupBy 根據給定的鍵對集合內的項目進行分組
push 把給定值加到集合的結尾
put 在集合內設定給定的鍵值對
sortBy 透過給定的鍵對集合進行排序。排序後的集合保留了原始數組鍵
where #透過給定的鍵值過濾集合

################################################################################################## #######

以上是Laravel集合的簡單理解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除