Laravel 8.6.0:綜合升級指南
已發表: 2022-01-02PHP 框架遵循強大的 MVC(模型-視圖-控制器)模式以提高生產力。 它於 2011 年首次發布,從那時起一直在影響市場並穩步增長。 許多人聘請專門的 Laravel 開發人員,因為它具有適用於數字世界的獨特特性和功能。
Laravel 的一些值得注意的特性:
Eloquent 對象關係模型
這種模式允許我們將數據庫表作為一個類來呈現。 這意味著您可以定義一個將綁定到您的數據庫的類。 Eloquent 允許您使用類函數從數據庫中選擇複雜的查詢。
刀片視圖
View 部分包含應用程序中使用的所有 HTML 代碼,這意味著無需將業務邏輯與表示層結合起來。 視圖支持刀片誘人引擎,允許編寫可重用的 HTMS 代碼和通用佈局文件。
控制器
使用控制器,您可以將相關的請求處理邏輯分組到一個類中。
驗證
完成認證機制只需要兩步:
- php artisan make: auth
- php工匠遷移
Laravel 與其他實現身份驗證系統的 Web 應用程序不同,它是免費的。
模板引擎
Laravel 具有內置模板,可通過使用動態內容播種來構建佈局。 它有多個帶有 JavaScript 和 CSS 代碼的強大結構的小部件。 Laravel Development Company可以自由地使用獨特的部分創建簡單和復雜的佈局。
安全
Web 應用程序安全性在數字世界中非常重要,每個在線平台都期望其安全。 Laravel 框架對密碼使用加鹽和散列機制,這意味著它永遠不會以純文本形式保存數據。 PHP Web 開發框架使用準備好的 SQL 語句來防止 SQL 注入攻擊,並且還使用 Bcrypt Hashing 算法生成加密密碼。
路由
Laravel 提供了一種簡單的路由機制,並構建了一個存在於一個文件中的列表,使路由易於訪問。 對於支持 API 的更大應用程序,您可以擁有多個文件。 您可以在表單中添加 @csrf 註釋以保護它免受 CSRF(跨站點請求偽造)攻擊。
發行說明
添加
- Illuminate\Collections\LazyCollection::rakeUntilTimeout()
- `migrate:fresh` 命令的 `–schema-path` 選項
固定的
- 變量中的點
- 修復了關閉計劃任務中的錯誤處理錯誤
- 修復了維護模式下空的 Retry-After 標頭
- `mysqldump: 未知變量 'column-statistics=0' 已修復用於 MariaDB 模式轉儲
- ComponentTagCompiler.php 上不再有雙重轉義
Laravel 8.6.0 有什麼新變化?
模型目錄
在Laravel 8 中 app/Models 文件夾將默認包含在內。 即使你不想要 Models 目錄,刪除 app/Models 目錄,那麼 artisan 命令也會直接在 app/ 目錄中添加新的模型。
路由緩存改進
一個大的 PHP 數組包含所有路由的集合,這使平台更高效、更快。 以前,如果路由關閉,則路由緩存將不起作用,但隨著更新,路由緩存在關閉時可以正常工作。

改進的維護模式
PHP artisan down 命令已有改進。 您可以使用秘密並配置平台維護模式,而不是使用 IP 白名單:
php artisan down –secret=SECRET_CODE
添加一個安全字符串來代替 SECRET_CODE 並以您需要訪問的維護模式訪問該站點:
您的域名.com/SECRET_CODE
這會生成一個秘密 cookie,允許您正常瀏覽網站,並提供了一種很好的方式來在維護模式下添加網站,同時通過密碼訪問它。
另一個補充是您可以預渲染維護頁面,即使 Composer 更新運行,最終用戶仍然會看到維護頁面而不是錯誤。
運行以下代碼:
php artisan down –render =” errors::503”
現在您可以運行命令在呈現的頁面中添加秘密並同時更改狀態代碼:
php artisan down –render=”errors::503” –status=200 –secret=SECRET_CODE
速率限制改進
Laravel 8 中的速率限制更加靈活,並且與之前版本的油門中間件 API 兼容。 這使得處理請求更容易,並限制用戶每分鐘發送的請求數量。
模式轉儲
您可以使用 artisan 命令在 database/schema 目錄中生成一個 schema 文件:
php 工匠模式:轉儲
轉儲您當前的數據庫架構並通過以下方式修剪現有的遷移:
php 工匠模式:轉儲 –prune
它將刪除舊的遷移並生成單個模式轉儲文件。
Laravel 噴射流
它是 Laravel 的免費開源應用程序腳手架。 它具有以下組件:
- 電子郵件驗證
- 註冊和登錄功能
- 兩因素身份驗證
- 接口支持
- 會話管理
作業批處理
最新的更新允許運行一批作業並在執行一批作業後運行操作。
新登陸頁面
當您在全新安裝中單擊主頁並具有淺色/深色版本時,將顯示該頁面。 它還具有指向 Laravel 的 SaaS 產品和社區站點的鏈接。
控制器命名空間前綴
以前的版本有名為 $namespace 的 RouteServiceProvider.php,它自動用作控制器命名空間的前綴。 此屬性已被刪除,您可以在路由文件中導入控制器類而不會出現任何問題。
可排隊的匿名事件偵聽器
之前你必須使用 ShouldQueue trait 創建事件類和事件偵聽器,但新特性引入了 Laravel 框架中的第一個命名空間函數:
照亮\事件\排隊
您將能夠更快地將閉包基礎作業發送到模型事件回調隊列中。
作業失敗的指數退避
向返回整數數組的作業類添加一個新的 backoff() 方法,以決定作業嘗試失敗時的等待時間。
我們已經討論了 Laravel 8 中的一些功能和更新。您將需要Laravel 開發服務來處理這些功能並改善用戶體驗,並通過新添加的功能使開發人員的任務變得容易。 不要錯過新的更新,與我們一起聘請專門的 Laravel 開發人員。
