If you want to group result by some condition which isn’t a direct column in your database, you can do that by providing a closure function.
For example, if you want to group users by day of registration, here’s the code:
$users = User::all()->groupBy(function($item) { return $item->created_at->format('Y-m-d');});
⚠️ Notice: it is done on a Collection class, so performed AFTER the results are fetched from the database.
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses
[NEW] Laravel AI SDK: 6 Practical Examples
9 lessons
1 h 02 min
Livewire v3 to v4: Changes You Need to Know
7 lessons
31 min
Laravel Coding with AI Agents: Cursor, Claude Code, Codex
5 lessons
1 h 01 min