Home > PHP Framework > Laravel > body text

Take a look at the new features of the latest release of Laravel8.78!

藏色散人
Release: 2022-01-20 10:11:39
forward
1656 people have browsed it

The following tutorial column of Laravel will introduce to you the new features of the latest release of Laravel 8.78. I hope it will be helpful to everyone!

The Laravel team has released 8.78 with the ability to add custom rules to default password validation, the mergeIfMissing() request method, batch counting in assertion tests, and the latest changes in the v8.x branch.

Define additional default password validation rules

Ash Allen contributed defining custom validation rules that will be run as part of the default password rules using the rules() method :

Password::defaults(function () {
    return Password::min(8)
        ->symbols()
        ->mixedCase()
        ->uncompromised()
        ->rules(new ZxcvbnRule());
});
Copy after login

rules() Method accepts a single rule, an array of rules, or a closure of closure validation rules.

If merge request data is missing

David Peach provides a mergeIfMissing() HTTP request method that merges new input into the request if a key is missing from the request input.

For example, if you leave the form checkbox unchecked, it will not be sent to the server. You may have to write something like this:

if ($request->missing('boolean_setting')) {
    $request->merge(['boolean_setting' => 0]);
}
Copy after login

Now you can define the value to be merged with the request when the parameter is missing:

$request->mergeIfMissing(['boolean_setting' => 0])
Copy after login

Assert the number of batches

@Chrysanthos for the Bus facade Contributed a assertBatchCount() method that asserts how many batches have been scheduled:

Bus::assertBatchCount(3);
Copy after login

HTML String Methods

Lars Klopstra contributed one for Str and Stringable toHtmlString() Method:

// 之前
new HtmlString(Str::of($content)->markdown());
 // 现在
Str::of($content)
    ->markdown()
    ->html();
Copy after login

Release Notes

You can view the full list of new features and updates between 8.77.0 and 8.78.0 on GitHub difference. The following release notes are taken directly from the changelog:

v8.78.0

New

  • New schedule:clear-mutex command (#40135 )
  • Added the function of custom password verification rules (#40137)
  • Added a mergeIfMissing method in the Illumbize Http request class (#40116)
  • New Illuminate/Support/MultipleInstanceManager (40913ac)
  • New SimpleMessage::lines() (#40147)
  • Added Illuminate/Support/Testing/Fakes/BusFake::assertBatchCount() (#40217)
  • Only enabled when using the broadcast driveronly-to-others Feature (#40234)
  • Added the ability to customize json options on the JsonResource response (#40208)
  • New Illuminate/Support/Stringable::toHtmlString() (#40247)

Changes

  • Improve support for custom column types (#40119)
  • Remove the Useless check (#40145)
  • Sort the collection by key when the first element of the sort operation is a string (even if it is a callable) (#40212)
  • If there are multiple hosts, please use the first host Illuminate/Database/Console/DbCommand::getConnection() (#40226)
  • Improvements in the reflector class (#40241)

Fix

  • Clear records when calling Http::fake() (#40194)
  • Fix attribute conversion (#40245, c0d9735)

Original address: https://laravel-news.com/laravel-8-78-0

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

The above is the detailed content of Take a look at the new features of the latest release of Laravel8.78!. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:learnku.com
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template