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.
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()); });
rules()
Method accepts a single rule, an array of rules, or a closure of closure validation rules.
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]); }
Now you can define the value to be merged with the request when the parameter is missing:
$request->mergeIfMissing(['boolean_setting' => 0])
@Chrysanthos for the Bus facade Contributed a assertBatchCount()
method that asserts how many batches have been scheduled:
Bus::assertBatchCount(3);
Lars Klopstra contributed one for Str and Stringable toHtmlString()
Method:
// 之前 new HtmlString(Str::of($content)->markdown()); // 现在 Str::of($content) ->markdown() ->html();
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:
schedule:clear-mutex
command (#40135 )mergeIfMissing
method in the Illumbize Http request class (#40116)Illuminate/Support/MultipleInstanceManager
(40913ac)SimpleMessage::lines()
(#40147)Illuminate/Support/Testing/Fakes/BusFake::assertBatchCount()
(#40217)only-to-others
Feature (#40234)Illuminate/Support/Stringable::toHtmlString()
(#40247)Illuminate/Database/Console/DbCommand::getConnection()
(#40226)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!