Browse Source

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

Jose Lorenzo Rodriguez 10 years ago
parent
commit
18bc7b5b1b
1 changed files with 2 additions and 2 deletions
  1. 2 2
      src/Collection/CollectionTrait.php

+ 2 - 2
src/Collection/CollectionTrait.php

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