Laravel 9 Collection Get Unique Values Tutorial

Reading Time: 4 minutes
1,928 Views

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 –

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.