The Blog

Laravel

Laravel

Default Laravel Classes That Support Macros

Learn about the Laravel classes that support macros. These classes include ResponseFactory for creating responses, Repository for working with cache stores, Str for text manipulation, Filesystem for filesystem interactions, Arr for array manipulation, and Router for route handling.

Laravel

Laravel Classes That Support Macros

John Koster
John Koster
November 21, 2016

This table lists framework classes that directly implement the __call method and indicates if they support macros. It does not include classes that implement __callStatic. The Illuminate\Cache\Repository and Illuminate\Database\Eloquent\Builder classes support macros. Though the Builder class does not use the Macroable trait, it provides methods for adding and retrieving macros.

Laravel

Laravel Facades Part Four: Facade Class Reference

John Koster
John Koster
November 21, 2016

Learn about Laravel facades in this four-part blog series. Part one provides an introduction to facades, part two covers how to use facades, part three explains how to create custom facades, and part four offers a reference to the facade classes. Each blog post provides detailed information on default Laravel facades, their corresponding class bindings, and any additional methods they provide.

Laravel

Laravel Facades Part One: An Introduction to Facades

John Koster
John Koster
November 21, 2016

This article is part of a four-part series on Laravel facades. Facades provide a convenient way to access components in Laravel. Each facade is bound to a component registered in the service container. Facades act like proxies, providing a static interface to an actual class instance.

Laravel

Laravel Facades Part Three: Creating Custom Facades

John Koster
John Koster
November 21, 2016

This article is part of a four part series all about Laravel facades. It covers how to create a facade class, register it with the service container, and use it in your application. The article also discusses creating a facade alias, which is optional. Examples are provided throughout the article to illustrate the concepts.

Laravel

Laravel Facades Part Two: Using Facades

John Koster
John Koster
November 21, 2016

Learn about Laravel facades in this four-part series. Part One provides an introduction to facades, while Part Two explains how to use them. Part Three dives into creating custom facades, and finally, Part Four offers a facade class reference. Facades are a convenient way to use static classes that redirect method calls to actual class instances. They allow for shorter and more readable code, though dependency injection is an alternative worth considering.

Laravel

Laravel Fluent Part One: Introduction

John Koster
John Koster
November 21, 2016

Learn how to work with Laravel's Fluent API in this two-part series. Discover how the Illuminate\Support\Fluent class offers a convenient way to handle data, making it easier to make assumptions and avoid errors. Find out how to access data from arrays and objects using Laravel's helper functions, and see how the Fluent class can simplify your code by allowing you to retrieve data with ease.

Laravel

Laravel Fluent Part Two: The Public API

John Koster
John Koster
November 21, 2016

This article is part of a two part series covering the Laravel Fluent API. The first part introduces the API, while the second part focuses on the public API. The article discusses the get method which retrieves values from a Fluent instance, as well as the getAttributes, toArray, jsonSerialize, and toJson methods. It also explains how closures work with Fluent and demonstrates how to handle deeply nested data structures when using the toJson method.

Laravel

Laravel Macros: An Easy Way to Extend Laravel Components

John Koster
John Koster
November 21, 2016

Learn how to use macros in Laravel to add custom functionality and reduce code. Macros in Laravel are similar to extension methods in C#. For example, you can add a countWords macro to the Str support class. Macros can be used in both static and instance contexts and have access to all private and protected members of the class. The Macroable trait provides methods to create macros and check for their existence. A few Laravel components, such as the Eloquent Builder, also support macros.

Laravel

Laravel Miscellaneous Helper Function: data_fill

John Koster
John Koster
November 21, 2016

The data_fill helper function is similar to the data_set helper function, but it does not overwrite existing data. It internally calls the data_set function with the $overwrite parameter set to false. With data_fill, you can set data without worrying about overwriting existing values. The function calls data_fill and data_set in the provided example code would produce the same results.

Latest posts

That Escalated Quickly: All the New Things

The past six months or so have been incredibly busy. What started as a new article series about cust...

Read more
Troubleshooting a Statamic Illegal Offset Type Error when Viewing Collection Entries in the Control Panel

In this post I talk about how I resolved a mysterious illegal offset type error when viewing collect...

Read more
Creating Simple HTTP Redirect Routes from a Statamic Site

Generating a custom Laravel routes file from a Statamic website to redirect to a new domain.

Read more
Disabling Vite File Hashes

Disabling file hashes in Vite output can be accomplished by modifying your project's vite.config.js

Read more
Implementing a Custom Laravel Blade Precompiler for Volt and Livewire

Learn how to implement a custom component compiler for Laravel's Blade templating language in this p...

Read more
Creating a Hybrid Cache System for Statamic: Part Five

Part 5 of 6 covers implementing a cache namespace and labeling system, which we can use to target mu...

Read more