Skip to main content

% blog read

What’s new in Laravel 5.7

Dean Appleton-Claydon

By Dean Appleton-Claydon

24th Sep 2018

Web development
What’s new in Laravel 5.7

You may have read previously about our preferred PHP framework Laravel, after 6 months of bug fixes and a year of security checks, Laravel 5.7 was released. Laravel is one of our areas of expertise and the new updates reinforce why it is one of our preferred platforms.

New features:


1. Console Artisan command testing:

Requesting user input, Laravel 5.7 allows for console command testing using various methods, such as expectsQuestion. In addition…

Code example:

Artisan::command('question', function () { ‘Do something’ });

2. Dump Server Integration:

Originally a package, this artisan command collects outputs in your current HTTP request. Instead of reviewing all the data being dumped on the server, all the API requests are caught and displayed on the console. This is useful to dump the data without all the browser HTTP errors.

Code example:

php artisan dump-server

Laravel now has customised pagination features, where on each side of the current link you can customise the quantity of links. With this new method there is no need to create custom pagination views. Thanks to a new API, you can define the link count on each side of the page.

Code example:

User::paginate(10)->linksOnEachSide(2);

4. Improved error message for dynamic calls:

In some cases it is useful to ask for the user’s input on the console; methods are in place to ask questions with another argument being the expected answer or multiple choice.

Code example:

Artisan::command('question', function () {
 $name = $this->ask('What is your name?');
});

5. Callable Action URLs:

With Laravel 5.7, there is no need to pass the full name of the controller, i.e. HomeController@index or ->name(‘index’), instead the controller class name is specified in the action and the URL name is automatically generated.

This action can also be referenced with the array syntax and accepts parameters as the second argument.

Code example:

return action([HomeController::class, ‘index’]);

6. Email Verification:

Authentication and user profile set up can/should implement some kind of verification of the user’s email. When implementing the new email verification a new column is added to the user’s table.

Now with Laravel’s Auth middleware, users can still register but can be restricted of authorities if their email is not verified. So the user’s verified email column is NULL, however once the user has verified their email address the column is replaced with a timestamp.

Code example:

Route::get(‘/‘, function(){
	return view(‘welcome’);
})->middleware(‘verified’);

References

Want to find out more?

Embark on a journey with us to transform your digital presence. Our collaborative approach ensures tailored solutions. Let's bring your vision to life together.
Get me started

Latest industry insights.

Explore the forefront of industry trends and innovations through our latest blogs where we unpack cutting-edge strategies, share expert perspectives, and keep you informed about the dynamic.
Why choose Magento for your eCommerce business?
24 April 2025

Why choose Magento for your eCommerce business?

Looking for an eCommerce platform that can grow with your business? Magento might be the perfect fit.

How accessibility improvements can reduce your website’s carbon emissions
22 April 2025

How accessibility improvements can reduce your website’s carbon emissions

By prioritising accessibility, you’re not just reaching more users, you’re reducing your impact on the planet.

Planning your next web project: when to redesign vs rebuild
17 April 2025

Planning your next web project: when to redesign vs rebuild

A well-planned web project starts by deciding whether to redesign for visual updates or rebuild for long-term scalability and performance.

We Create Digital Logo
Got a project in mind?