使用数组语法
Collection
对象实现了 ArrayAccess
和 IteratorAggregate
接口,允许它像数组一样使用。
访问集合元素:
$collection = collect([1, 2, 3]);
$result = $collection[1];
结果:2
分配新元素:
$collection = collect([1, 2, 3]);
$collection[] = 4;
结果:$collection
是 [1, 2, 3, 4]
循环收集:
$collection = collect(["a" => "one", "b" => "two"]);
$result = "";
foreach($collection as $key => $value){
$result .= "(".$key.": ".$value.") ";
}
结果:$result
是 (a: one) (b: two)
数组到集合转换:
要将集合转换为本机 PHP 数组,请使用:
$array = $collection->all();
//or
$array = $collection->toArray()
要将数组转换为集合,请使用:
$collection = collect($array);
使用带有数组函数的集合
请注意,集合是普通对象,当由明确要求数组的函数(如 array_map($callback)
)使用时,这些对象将无法正确转换。
请务必首先转换集合,或者,如果可用,请使用 Collection
类提供的方法:$collection->map($callback)