Inside this article we will see how to get unique values from laravel collections. Article contains a very classified information about the basic concept of Laravel 9 collection get unique values.
We will consider single dimensional array as well as multidimensional array for this laravel 9 collection.
The Illuminate\Support\Collection
class provides a fluent, convenient wrapper for working with arrays of data. For example, check out the following code. We’ll use the collect
helper to create a new collection instance from the array.
As mentioned above, the collect
helper returns a new Illuminate\Support\Collection
instance for the given array.
So, creating a collection is as simple as:
$collection = collect([1, 2, 3]);
Learn More –
- Laravel 9 Clear Cache of Application Route, View & Config
- Laravel 9 Collection contains() and containsStrict() Methods
- Laravel 9 Collection count() and countBy() Methods
- Laravel 9 Collection filter() Method Tutorial
Let’s get started.
Laravel Installation
Open terminal and run this command to create a laravel project.
composer create-project laravel/laravel myblog
It will create a project folder with name myblog inside your local system.
To start the development server of laravel –
php artisan serve
URL: http://127.0.0.1:8000
Assuming laravel already installed inside your system.
Example #1: Get Unique (Single Dimensional Collection Array)
In this example we will consider a single dimensional array. We will see how to get only unique values from it.
Suppose we have SiteController.php a controller file inside /app/Http/Controllers folder.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class SiteController extends Controller { public function index() { $data = [1,2,2,3,1,4,3,5,6,7,8,7,8,9,9,5]; $data = collect($data)->unique(); dd($data); } }
Output
When we execute this code snippet, then we will get something like this –
Example #2: Get Unique (Multi Dimensional Collection Array)
In this example we will consider a multi dimensional array. We will see how to get only unique values from it.
Same controller file we are considering for this demo as well.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class SiteController extends Controller { public function index() { $data = collect([ [ ["id" => 1, "name" => "Sanjay", "email" => "sanjay@gmail.com"], ["id" => 2, "name" => "Vijay", "email" => "vijay@gmail.com"], ["id" => 1, "name" => "Sanjay", "email" => "sanjay@gmail.com"], ["id" => 3, "name" => "Ashish", "email" => "ashish@gmail.com"], ["id" => 3, "name" => "Ashish", "email" => "ashish@gmail.com"] ], [ ["id" => 1, "name" => "Sanjay", "email" => "sanjay@gmail.com"], ["id" => 2, "name" => "Vijay", "email" => "vijay@gmail.com"], ["id" => 2, "name" => "Vijay", "email" => "vijay@gmail.com"] ] ]); $data = $data->map(function ($array) { return collect($array)->unique('id')->all(); }); dd($data); } }
Output
When we execute this code snippet, then we will get something like this –
We hope this article helped you to Laravel 9 Collection Get Unique Values Tutorial in a very detailed way.
If you liked this article, then please subscribe to our YouTube Channel for PHP & it’s framework, WordPress, Node Js video tutorials. You can also find us on Twitter and Facebook.