
Laravel launched Laravel 11.three this week which incorporates a number of thrilling options designed to boost your growth workflow. These options embrace multi-line textarea enter in Laravel Prompts, pull
and pullHidden()
strategies, and hasAny
methodology for enhanced session administration.
Multi-line Textarea Enter in Laravel Prompts
Laravel 11.three provides help for multi-line textarea inputs in Laravel Prompts. That is significantly helpful when detailed textual content inputs are obligatory, similar to person bios, descriptions, or every other prolonged enter. Right here’s the way you may implement it:
use operate LaravelPromptstextarea;
$bio = textarea(
label: 'Inform us about your self.',
placeholder: 'About me...',
required: true,
trace: 'This will likely be displayed in your profile.'
);
// Including validation guidelines
$bio = textarea(
label: 'Inform us about your self.',
validate: fn (string $worth) => match (true) {
strlen($worth) < 50 => 'Your bio have to be not less than 50 characters.',
strlen($worth) > 5000 => 'Your bio should not exceed 5,000 characters.',
default => null
}
);
Context pull()
and pullHidden()
Strategies
Laravel 11.three additionally introduces pull() and pullHidden() strategies for the Context service, that are helpful for extracting after which eradicating knowledge from the context—preferrred for situations the place transient knowledge is used throughout a request’s lifecycle.
$foo = Context::pull('foo');
$bar = Context::pullHidden('foo');
These strategies assist handle momentary knowledge with out leaving it within the international context longer than obligatory, which is especially helpful for knowledge that’s solely related throughout a selected a part of the applying’s workflow, similar to momentary person states or flash messages.
New Session hasAny()
Technique
The hasAny()
methodology simplifies checks throughout a number of session variables, permitting you to verify the presence of any listed session knowledge effectively. This methodology can clear up your code, eliminating the necessity for a number of has()
checks. Right here’s an instance:
// Earlier than
if (session()->has('first_name') || session()->has('last_name')) {
// Carry out actions
}
// After utilizing hasAny()
if (session()->hasAny(['first_name', 'last_name'])) {
// Carry out actions
}
Conclusion
These options in Laravel 11.three provide extra nuanced management over person inputs and session knowledge, together with higher administration of utility context. They mirror Laravel’s ongoing dedication to enhancing developer comfort and utility robustness. For extra data on all the modifications on this replace, try the official changelog.