Chapter 17. Helpers and Collections

We’ve already covered many global functions throughout the book: these are little helpers that make it easier to perform common tasks, like dispatch() for jobs, event() for events, and app() for dependency resolution. We also talked a bit about Laravel’s collections, or arrays on steroids, in Chapter 5.

In this chapter we’ll cover some of the more common and powerful helpers and some of the basics of programming with collections.


You can find a full list of the helpers Laravel offers in the docs, but we’re going to cover a few of the most useful functions here.


Laravel 5.8 deprecated all global helpers that start with array_ or str_. The helpers were removed in Laravel 6.0 but were made available in a laravel/helpers package for backward compatibility. Each of these helpers is backed by a method on the Arr or Str classes.


PHP’s native array manipulation functions give us a lot of power, but sometimes there are standard manipulations we want to make that require unwieldy loops and logic checks. Laravel’s array helpers make a few common array manipulations much simpler:

Arr::first($array, $callback, $default = null)

Returns the first array value that passes a test, defined in a callback closure. You can optionally set the default value as the third parameter. Here’s an example:

    $people = [
            'email' => '',
            'name' => 'Malcolm Me'
            'email' => '',
            'name' => 'James Jo'

    $value = Arr::first(

Get Laravel: Up & Running, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.