Laravel10的新特性有哪些

今天小編給大家分享一下Laravel10的新特性有哪些的相關(guān)知識點,內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

成都創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的來賓網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

Laravel 10現(xiàn)已發(fā)布,包括最低要求的PHP v8.1版本、新的Laravel Pennant軟件包、可調(diào)用的驗證規(guī)則、本地類型聲明等等。

Laravel發(fā)布計劃

在Laravel 9之前,主要的框架版本每年發(fā)布兩次,或者大約每六個月發(fā)布一次。從Laravel 9開始,核心團隊轉(zhuǎn)向了年度計劃,并在2022年2月發(fā)布了Laravel 9(而不是最初計劃的2021年9月)。

Laravel使用許多由社區(qū)驅(qū)動的軟件包以及九個Symfony組件來實現(xiàn)框架中的許多功能。Symfony 6.0預(yù)計將在11月發(fā)布。出于這個原因,我們決定延遲Laravel 9.0的發(fā)布直到2022年。

通過延遲發(fā)布,我們可以將底層的Symfony組件升級到Symfony 6.0,而不必等到2022年9月才能進行此升級。此外,這也更好地為我們未來的發(fā)布做好了準(zhǔn)備,因為我們每年都是在Symfony發(fā)布后的兩個月內(nèi)進行。

未來,Laravel 將每年發(fā)布一個主要版本,包括:

  • Laravel 9: 2022 年 2 月 8 日發(fā)布

  • Laravel 10: 2023 年 2 月 14 日發(fā)布

  • Laravel 11: 2024 年第一季度發(fā)布

Laravel 9 將持續(xù)修復(fù)漏洞直至 2023 年 8 月 8 日,并持續(xù)提供安全修復(fù)直至 2024 年 2 月 14 日。

Laravel 10 將提供漏洞修復(fù)直至 2024 年 8 月 6 日,并持續(xù)提供安全修復(fù)直至 2025 年 2 月 14 日。

接下來我們看看 Laravel 10 的一些重大新功能:

Laravel 10 不再支持 PHP 8.0

在 Laravel 10 中,Laravel 框架將不再支持 PHP <=v8.0。最低要求版本為 PHP ^8.1。查看Laravel 9.x和master之間的差異,我們可以期待在框架中看到使用了PHP 8.1的特性,例如只讀屬性。

Laravel Pennant

Laravel Pennant 是 Laravel 團隊創(chuàng)建的一個包,將隨 Laravel 10 一起發(fā)布,為您的應(yīng)用程序提供特性標(biāo)志(Feature Flags)。

特性標(biāo)志使您能夠有信心地逐步推出新的應(yīng)用程序特性、對新界面設(shè)計進行 A/B 測試、補充基于主干的開發(fā)策略等等。

這個軟件包是核心團隊提供的官方軟件包陣容中最新的一個,這意味著我們現(xiàn)在擁有一個構(gòu)建良好、經(jīng)過測試的軟件包,為我們提供了一些偉大的功能。

Laravel 的進程層

Laravel 進程服務(wù) 使測試和運行 CLI 進程成為一個夢幻般的工作。

use Illuminate\Support\Facades\Process;

$result = Process::run('ls -la');

$result->successful();
$result->failed();
$result->exitCode();
$result->output();
$result->errorOutput();
$result->throw();
$result->throwIf($condition);

進程層包括了開箱即用的豐富功能,如:

  • 通過流式的進程方法,在運行前建立一個流程實例

  • 在收到輸出時進行處理

  • 異步進程

  • 進程池

  • 通過 fake() 實現(xiàn)豐富的測試功能

  • 防止測試中出現(xiàn)雜亂進程

測試進程從未如此簡單。

Laravel 10 骨架中的本地類型聲明

在 Laravel 10,應(yīng)用程序骨架代碼將有本地類型聲明。這意味著任何由框架生成的用戶區(qū)代碼都會有類型提示和返回類型。我們的文章討論了圍繞該方法的注意事項,我們認(rèn)為在未來創(chuàng)建新項目時,你會喜歡上增加的類型。

類型的添加方式可以為 Laravel 項目帶來最新的 PHP 類型提示功能,而且不會破壞框架層面的后向兼容性:

  • 返回類型

  • 方法參數(shù)

  • 盡可能地刪除多余的注釋

  • 在閉包參數(shù)中允許用戶本地類型

  • 不包括已定義類型的屬性

可調(diào)用的驗證規(guī)則成為默認(rèn)規(guī)則

從 Laravel 10 開始, 可調(diào)用的驗證規(guī)則 現(xiàn)在是默認(rèn)的規(guī)則。 當(dāng)你通過 artisan 創(chuàng)建一個新的驗證規(guī)則時, 以下是你能在預(yù)想中得到的結(jié)果:

# Laravel 9 創(chuàng)建了一個規(guī)則類,實現(xiàn)了
# Illuminate\Contracts\Validation\Rule 接口
artisan make:rule Uppercase

# Laravel 9 創(chuàng)建一個可調(diào)用和隱性規(guī)則的標(biāo)志
artisan make:rule Uppercase --invokable
artisan make:rule Uppercase --invokable --implicit

# Laravel 10 默認(rèn)會創(chuàng)建一個可調(diào)用的規(guī)則
artisan make:rule Uppercase

# Laravel 10 隱性規(guī)則
artisan make:rule Uppercase --implicit

測試的配置文件選項

Laravel 10 的一個新功能是 --profile 選項,這將使你很容易找到你的應(yīng)用程序中所有緩慢的測試。

--profile 選項有助于保留您的 快速測試 ,幫助您修復(fù)緩慢的測試,或者更好地對它們進行分組,以便更容易地避免一直運行它們。

新字符串密碼Helper

Str::password 方法可以生成給定長度的安全、隨機的密碼。密碼將由字母、數(shù)字、符號和空格組成。默認(rèn)情況下,密碼的長度為32個字符:

use Illuminate\Support\Str;

$password = Str::password();

// 'EbJo2vE-AS:U,$%_gkrV4n,q~1xy/-_4'

$password = Str::password(12);

// 'qwuar>#V|i]N'

Laravel 9的棄用

Laravel 9中標(biāo)記為已棄用的方法在Laravel 10中被刪除。我們可以期待發(fā)行版升級指南概述所有不推薦的方法、潛在影響評估,以及如何升級到更接近發(fā)行版。

以下內(nèi)容是在撰寫本文時, 將Laravel 框架 master 主分支到 9.x 分支的 對比 中發(fā)現(xiàn)的一些棄用點:

  • 移除各種棄用 Pull Request #41136

  • 移除已棄用日期屬性 Pull Request #42587

  • 移除 handleDeprecation 方法 Pull Request #42590

  • 移除過時的 assertTimesSent 方法 Pull Request #42592

  • 移除過時的 ScheduleListCommand $defaultName 特性 419471e

  • 移除過時的 Route::home 方法 Pull Request #42614

  • 移除過時的 dispatchNow 功能 Pull Request #42591

測試 Laravel 10

如果你現(xiàn)在就想開始測試Laravel 10,你可以通過使用 --dev 標(biāo)志將它安裝到一個新項目中:

laravel new <your-project-name> --dev

升級到 Laravel 10

最簡單的升級方法是利用 Laravel變化 并且它可以自動地始終保持應(yīng)用程序的更新,或者根據(jù)官方文檔 升級指南。

以上就是“Laravel10的新特性有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站欄目:Laravel10的新特性有哪些
文章位置:http://bm7419.com/article20/jdchco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、網(wǎng)站導(dǎo)航虛擬主機、手機網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名