Table of Contents
Str::limit()
head()
Str::between()
blank()
Str::contains()
Arr::pluck()
collect()
Home PHP Framework Laravel [Organize and share] Several practical Laravel auxiliary functions

[Organize and share] Several practical Laravel auxiliary functions

Dec 28, 2022 pm 09:01 PM
php laravel

As a PHP full-stack developer who mainly uses Laravel, I often look for methods in some frameworks that can be used by me to effectively reduce development time or reduce code complexity. Below are some good auxiliary methods that I have compiled that I often use in daily life. Let’s find out ✨

[Organize and share] Several practical Laravel auxiliary functions

The methods in this article are mostly based on Laravel7 and earlier versions. (If you encounter problems, please check whether it is a version compatibility issue first)

Str::limit()

Our first auxiliary function Get a string and truncate it with a set character length limit. It takes two required parameters: the string you want to truncate, and the character length limit for the returned truncated string. [Related recommendations: laravel video tutorial]

use Illuminate\Support\Str;

$truncated = Str::limit('The quick brown fox jumps over the lazy dog', 20);

// The quick brown fox ...
Copy after login

You can also pass in the third optional parameter to control what is displayed after the returned string.

use Illuminate\Support\Str;

$truncated = Str::limit('The quick brown fox jumps over the lazy dog', 20, '[...]');

// The quick brown fox [...]
Copy after login

I find this perfect for shortening a large block of text into a summary or post preview for a list of articles.

head()

This function is awesome. A simple method usually consists of several nested primitive PHP functions, head() will return the first element of the array. I've used it in many different applications due to its global and ubiquitous nature.

$array = [100, 200, 300];

$first = head($array);

// 100
Copy after login

Want to do it the other way around? Use the last method to get the last element of the array.

$array = [100, 200, 300];

$last = last($array);

// 300
Copy after login

This is the best approach regarding using head and last methods as they don't affect the original array at all.

Str::between()

As the name suggests, Str::between() will return the content in the string. If the specified string is not found, null is returned.

use Illuminate\Support\Str;

$slice = Str::between('My name is Inigo Montoya.', 'My name is ', '.');

// 'Inigo Montoya'
Copy after login

I like to use this method to get information from () or [], return specific parts of the url, or even parse from html tags data.

blank()

It is similar to empty(), but better to use . It returns a Boolean value based on whether the parameter you pass in contains actual data.

// all of these return true
blank('');
blank('   ');
blank(null);
blank(collect());

// all of these return false
blank(true);
blank(false);
blank(0);
Copy after login

This helper function is particularly useful when combined with form validation to remove data that is not entered in the API specification.
It is better to use than empty(trim()).

Str::contains()

Our long-awaited auxiliary function, determines whether a string contains another string. This question has been asked many times on StackOverflow and other programming forums, because currently in ordinary PHP programs you can only use strpos.

use Illuminate\Support\Str;

$contains = Str::contains('My name is Inigo Montoya.', 'Inigo');

// true

$contains = Str::contains('My name is Inigo Montoya.', 'Andrew');

// false
Copy after login

With With recent RFC approval, PHP will soon have its own str_contains method which will make this method obsolete. But until then, it is one of the most useful helper functions in Laravel.

Arr::pluck()

This method is arguably one of the more powerful methods I listed in this article, Arr::pluck Iterate over a multidimensional array and retrieve all values ​​ for a given key.

Let's look at a simple example:

use Illuminate\Support\Arr;

$array = [
    ['website' => ['id' => 1, 'url' => 'reddit.com']],
    ['website' => ['id' => 2, 'url' => 'twitter.com']],
    ['website' => ['id' => 3, 'url' => 'dev.to']],
];

$names = Arr::pluck($array, 'website.url');

// ['reddit.com', 'twitter.com', 'dev.to']
Copy after login

Pass in an array and a dot notation string to determine the key value we want, then iterate through the multi-dimensional array and assign the specified key A one-dimensional array of corresponding values ​​is returned to us.

I've used this method many times on the returned API data (when I felt I didn't need to use the entire collection). It makes it very easy to get an array of IDs, names, or other properties without creating an entire foreach loop.

collect()

Once I find information about collections, I never stop using them. This is probably the helper function I find myself using the most, it allows you to convert an array into a collection.

Why is this important? Because collections come with a large number of convenience methods, you can combine them together to perform various filtering, sorting, and modification operations on the array with the simplest closure parameters. No foreach loops, no intermediate variables, just clean code.

Look at this simple example:

$collection = collect(['Keys', 'Krates']);

return $collection->map(function ($value) {
    return Str::upper($value);
});

// ['KEYS', 'KRATES']

return $collection->filter(function ($value) {
    return strlen($value) > 4;
});

// ['Krates']
Copy after login

Honestly, this is just the tip of the collection iceberg. I use them both in my projects, especially when I'm dealing with large and complex data sets that don't come from a database model. CSV data, external API requests and directory structures are all available from drop collections.

This is what I know now!

Original address: https://dev.to/aschmelyun/my-favorite-laravel-helpers-and-how-to-use-them-28ij

Translation address: https://learnku.com/laravel/t/43776

For more programming related knowledge, please visit: Programming Video! !

The above is the detailed content of [Organize and share] Several practical Laravel auxiliary functions. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP and Python: Comparing Two Popular Programming Languages PHP and Python: Comparing Two Popular Programming Languages Apr 14, 2025 am 12:13 AM

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

PHP's Current Status: A Look at Web Development Trends PHP's Current Status: A Look at Web Development Trends Apr 13, 2025 am 12:20 AM

PHP remains important in modern web development, especially in content management and e-commerce platforms. 1) PHP has a rich ecosystem and strong framework support, such as Laravel and Symfony. 2) Performance optimization can be achieved through OPcache and Nginx. 3) PHP8.0 introduces JIT compiler to improve performance. 4) Cloud-native applications are deployed through Docker and Kubernetes to improve flexibility and scalability.

PHP vs. Other Languages: A Comparison PHP vs. Other Languages: A Comparison Apr 13, 2025 am 12:19 AM

PHP is suitable for web development, especially in rapid development and processing dynamic content, but is not good at data science and enterprise-level applications. Compared with Python, PHP has more advantages in web development, but is not as good as Python in the field of data science; compared with Java, PHP performs worse in enterprise-level applications, but is more flexible in web development; compared with JavaScript, PHP is more concise in back-end development, but is not as good as JavaScript in front-end development.

The Enduring Relevance of PHP: Is It Still Alive? The Enduring Relevance of PHP: Is It Still Alive? Apr 14, 2025 am 12:12 AM

PHP is still dynamic and still occupies an important position in the field of modern programming. 1) PHP's simplicity and powerful community support make it widely used in web development; 2) Its flexibility and stability make it outstanding in handling web forms, database operations and file processing; 3) PHP is constantly evolving and optimizing, suitable for beginners and experienced developers.

PHP's Purpose: Building Dynamic Websites PHP's Purpose: Building Dynamic Websites Apr 15, 2025 am 12:18 AM

PHP is used to build dynamic websites, and its core functions include: 1. Generate dynamic content and generate web pages in real time by connecting with the database; 2. Process user interaction and form submissions, verify inputs and respond to operations; 3. Manage sessions and user authentication to provide a personalized experience; 4. Optimize performance and follow best practices to improve website efficiency and security.

PHP vs. Python: Core Features and Functionality PHP vs. Python: Core Features and Functionality Apr 13, 2025 am 12:16 AM

PHP and Python each have their own advantages and are suitable for different scenarios. 1.PHP is suitable for web development and provides built-in web servers and rich function libraries. 2. Python is suitable for data science and machine learning, with concise syntax and a powerful standard library. When choosing, it should be decided based on project requirements.

PHP in Action: Real-World Examples and Applications PHP in Action: Real-World Examples and Applications Apr 14, 2025 am 12:19 AM

PHP is widely used in e-commerce, content management systems and API development. 1) E-commerce: used for shopping cart function and payment processing. 2) Content management system: used for dynamic content generation and user management. 3) API development: used for RESTful API development and API security. Through performance optimization and best practices, the efficiency and maintainability of PHP applications are improved.

PHP and Python: Code Examples and Comparison PHP and Python: Code Examples and Comparison Apr 15, 2025 am 12:07 AM

PHP and Python have their own advantages and disadvantages, and the choice depends on project needs and personal preferences. 1.PHP is suitable for rapid development and maintenance of large-scale web applications. 2. Python dominates the field of data science and machine learning.

See all articles