diff --git a/src/Illuminate/Database/Eloquent/Builder.php b/src/Illuminate/Database/Eloquent/Builder.php index 60ca519b6be2..afe153a4d1e0 100755 --- a/src/Illuminate/Database/Eloquent/Builder.php +++ b/src/Illuminate/Database/Eloquent/Builder.php @@ -425,10 +425,15 @@ public function chunk($count, callable $callback) * @param int $count * @param callable $callback * @param string $column + * @param string|null $alias * @return bool */ - public function chunkById($count, callable $callback, $column = 'id') + public function chunkById($count, callable $callback, $column = null, $alias = null) { + $column = is_null($column) ? $this->getModel()->getKeyName() : $column; + + $alias = is_null($alias) ? $column : $alias; + $lastId = 0; do { @@ -446,7 +451,7 @@ public function chunkById($count, callable $callback, $column = 'id') return false; } - $lastId = $results->last()->{$column}; + $lastId = $results->last()->{$alias}; } while ($countResults == $count); return true;