Take a look at the new features of the latest release of Laravel8.78!
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()); });
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]); }
Now you can define the value to be merged with the request when the parameter is missing:
$request->mergeIfMissing(['boolean_setting' => 0])
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);
HTML String Methods
Lars Klopstra contributed one for Str and Stringable toHtmlString()
Method:
// 之前 new HtmlString(Str::of($content)->markdown()); // 现在 Str::of($content) ->markdown() ->html();
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 driver
only-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!

What new features and best practices does Laravel's migration system offer in the latest version? 1. Added nullableMorphs() for polymorphic relationships. 2. The after() method is introduced to specify the column order. 3. Emphasize handling of foreign key constraints to avoid orphaned records. 4. It is recommended to optimize performance, such as adding indexes appropriately. 5. Advocate the idempotence of migration and the use of descriptive names.

Laravel10,releasedinFebruary2023,isthelatestLTSversion,supportedforthreeyears.ItrequiresPHP8.1 ,enhancesLaravelPennantforfeatureflags,improveserrorhandling,refinesdocumentation,andoptimizesperformance,particularlyinEloquentORM.

Laravel's latest version introduces multiple new features: 1. LaravelPennant is used to manage function flags, allowing new features to be released in stages; 2. LaravelReverb simplifies the implementation of real-time functions, such as real-time comments; 3. LaravelVite accelerates the front-end construction process; 4. The new model factory system enhances the creation of test data; 5. Improves the error handling mechanism and provides more flexible error page customization options.

Softleteinelelavelisling -Memptry-braceChortsDevetus -TeedeecetovedinglyDeveledTeecetteecedelave

Laravel10.xisthecurrentversion,offeringnewfeatureslikeenumsupportinEloquentmodelsandimprovedroutemodelbindingwithenums.Theseupdatesenhancecodereadabilityandsecurity,butrequirecarefulplanningandincrementalimplementationforasuccessfulupgrade.

LaravelmigrationsstreamlinedatabasemanagementbyallowingschemachangestobedefinedinPHPcode,whichcanbeversion-controlledandshared.Here'showtousethem:1)Createmigrationclassestodefineoperationslikecreatingormodifyingtables.2)Usethe'phpartisanmigrate'comma

To find the latest version of Laravel, you can visit the official website laravel.com and click the "Docs" button in the upper right corner, or use the Composer command "composershowlaravel/framework|grepversions". Staying updated can help improve project security and performance, but the impact on existing projects needs to be considered.

YoushouldupdatetothelatestLaravelversionforperformanceimprovements,enhancedsecurity,newfeatures,bettercommunitysupport,andlong-termmaintenance.1)Performance:Laravel9'sEloquentORMoptimizationsenhanceapplicationspeed.2)Security:Laravel8introducedbetter


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

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

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Notepad++7.3.1
Easy-to-use and free code editor

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.
