Laravel 9 Collection filter() Method Tutorial

Reading Time: 4 minutes
3,746 Views

Inside this article we will see the use of filter() method in laravel 9 collections. Article contains a very classified information about the basic concept of Laravel 9 Collection filter().

We will see the concept of filter item into laravel collection. We will filter data into single dimensional array, multi dimensional array.

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.

Collection – filter() Method

We will see how to use filter() into collection.

Suppose we have SiteController.php a controller file inside /app/Http/Controllers folder.

Code Example #1

Laravel Collection filter() with multi dimensional array.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class SiteController extends Controller
{
    public function index()
    {
        $students = collect([
            ["id" => 1, "name" => "Sanjay", "email" => "sanjay@gmail.com", "marks" => 88],
            ["id" => 2, "name" => "Vijay", "email" => "vijay@gmail.com", "marks" => 70],
            ["id" => 3, "name" => "Ashish", "email" => "ashish@gmail.com", "marks" => 75]
        ]);

        $passed = $students->filter(function ($value, $key) {
            return data_get($value, 'marks') > 70;
        });

        $passed = $passed->all();

        dd($passed);
    }
}

Concept

$passed = $students->filter(function ($value, $key) {
      return data_get($value, 'marks') > 70;
});

Output

Code Example #2

Laravel Collection filter() with single dimensional array.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class SiteController extends Controller
{
    public function index()
    {
        $data = collect([2, 3, 5, null, false, '', 0, []]);

        $data = $data->filter()->all();

        dd($data);
    }
}

In this case it will remove the false values from array

We hope this article helped you to Laravel 9 Collection filter() Method 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.