ソースを参照

Using map() instead of unfold() in Collection::chunk() as it is faster

Jose Lorenzo Rodriguez 10 年 前
コミット
18bc7b5b1b
1 ファイル変更2 行追加2 行削除
  1. 2 2
      src/Collection/CollectionTrait.php

+ 2 - 2
src/Collection/CollectionTrait.php

@@ -607,7 +607,7 @@ trait CollectionTrait
      */
     public function chunk($chunkSize)
     {
-        return $this->unfold(function ($v, $k, $iterator) use ($chunkSize) {
+        return $this->map(function ($v, $k, $iterator) use ($chunkSize) {
             $values = [$v];
             for ($i = 1; $i < $chunkSize; $i++) {
                 $iterator->next();
@@ -617,7 +617,7 @@ trait CollectionTrait
                 $values[] = $iterator->current();
             }
 
-            return empty($values) ? $values : [$values];
+            return $values;
         });
     }