Laravel 是一個由 Taylor Otwell 所建立，自由開源的 PHP Web 框架，旨在實作的 Web 軟體的 MVC 架構，並作為 CodeIgniter 的替代方案。其原始碼託管於 GitHub，許可條款為 MIT 許可證。Laravel 的特色包含：支援使用者身份驗證和授權，具有模組化的套件系統且有專屬的套件庫，提供連線許多種類的關連式資料庫的方式，提供工具來協助應用程式的部署和維持，並且發展出許多語法糖。 Laravel 與 Symfony、Zend、CodeIgniter、Yii2 和其他框架一起被視為最受歡迎的 PHP 框架之一。 歷史 Laravel 1 Laravel 在 2011 年 6 月 9 日釋出了第一個 Beta 測試版本，並在一個月後發布正式版本 Laravel 1。Laravel 1 預設提供了身份驗證、多語系、 Model MVC、view、session、路由和其他機制，但缺少控制器，以至於無法成為一個真正的 MVC 框架。 Laravel 2 2011 年 9 月正式釋出，並由作者與社群提供了許多最佳化。主要的新功能包括支援 controller，使 Laravel 2 成為真正的 MVC 框架，並且實現了 控制反轉 IoC ，和提供樣版引擎 blade。 但同時也帶來一個缺點：移除了第三方套件的支援。 Laravel 3 於 2012 年釋出。帶來的新功能包括：命令列介面 CLI Artisan，支援多種 資料庫管理系統、提供 migration 為資料庫做 版本控制 ，支援事件（event）的處理，以及封裝系統 Bundles。 隨著 Laravel 3 的釋出，Laravel 的使用者和受歡迎程度也隨之增加。 Laravel 4 代號為 Illuminate，於 2013 年釋出。此版本將過去的程式碼全部重寫，並將各自分散許多的套件中，並透過 Composer 管理（一個應用程式等級的 套件管理工具 ）。 這樣的修改提高了 Laravel 4 的可擴充性，搭配其官方的六個月的小數點版本的發布計畫。其他 Laravel 4 的特點包括：資料庫的 seeding （為資料庫建置初始的資料），支援 佇列（queue），支援傳送不同型別的電子郵件，並支援資料庫的 軟刪除。 Laravel 5 2015 年 2 月釋出原先為 Laravel 43，因為一些內部因素而修改版本號）。 新的特點包括：提供週期性地執行任務的排程器 Scheduler，提供一個抽象層 Flysystem ，讓遠端與本地端的 檔案系統 能有相同的操作方式，提供 Elixir 以管理靜態資源，並提供了可簡化串接 OAuth 登入的套件 Socialite 。 Laravel 5 也同時修改了 目錄結構 。 Laravel 51 2015 年 6 月釋出，是 Laravel 的第一個 長期支援版本（LTS） ，並計畫提供兩年的 錯誤修正 和三年的 安全性更新 。 同時也預計未來每兩年會釋出一次新的 LTS 版本。 Laravel 53 於 2016 年 8 月 23 日釋出。此版本著重在協助使用者加速開發，並提供了最佳化開發流程的工具。 Laravel 54 2017 年 1 月 24 日釋出。此版本提供了許多新功能，像 Laravel Dusk，Laravel Mix，Components Slots（Blade），Markdown Emails，自動 Facades、路由的最佳化，collection 的高階函式，還有很多其他功能。 Laravel 6 2019 年 9 月 3 日釋出。引入語義化版本控制，相容 Laravel Vapor，最佳化授權響應、Job Middleware、Lazy Collections 和 Subquery 等功能。移除預設的前端腳手架，並轉移至 Laravel UI 套件。 Laravel 7 2020 年 3 月 3 日釋出。加入 Laravel Sanctum 為 SPA 單頁應用、手機應用等提供 API token 的生成和管理功能，及 Stub Customization、Custom Eloquent Casts、Blade Component Tags、基於 Guzzle 改進的 HTTP Client、Fluent String Operations、CORS Support、Query Time Casts、Multiple Mail Drivers 等功能，這個版本也改善了路由繫結和快取的效能，並為 Artisan 加入了 test 指令。 Laravel 8 2020 年 9 月 8 日釋出。Laravel 8 透過引入 Laravel Jetstream、模型工廠類、遷移壓縮、佇列批處理、改善速率限制、佇列改進、動態 Blade 元件、Tailwind 分頁檢視、時間測試助手、artisan serve 的改進、事件監聽器的改進，以及各種其他錯誤修復和可用性改進，對 Laravel 7x 繼續進行了改善。 Laravel 9 2022 年 2 月 8 日釋出，PHP 版本最低為 80，引入了對 Symfony 60 元件、Symfony Mailer、Flysystem 30 的支援、改進的輸出、routelistLaravel Scout 資料庫驅動程式、新的 Eloquent 訪問器 變異器語法、透過 Enum 的隱式路由繫結以及各種其他錯誤修復和可用性改進。 Laravel 10 2023 年 2 月 14 日釋出，PHP 版本最低為 81，向所有應用程式框架方法以及用於在整個框架中生成類的使用者區程式碼檔案引入了引數和返回型別。此外，還引入了一個新的、開發人員友好的抽象層，用於啟動外部程序並與外部程序互動。此外，Laravel Pennant 的引入提供了一種管理應用程式 功能標誌 的絕佳方法。 版本釋出紀錄 自 Laravel 9 開始，所有版本均提供 18 個月的錯誤修正與 2 年的安全性更新。 版本 釋出日期 PHP 版本 2011 年 6 月 2011 年 9 月 2012 年 2 月 22 日 2012 年 3 月 27 日 2012 年 5 月 22 日 2013 年 5 月 28 日 530 2013 年 12 月 11 日 530 2014 年 6 月 1 日 540 2015 年 2 月 4 日 540 2015 年 6 月 9 日 559 2015 年 12 月 21 日 559 2016 年 8 月 23 日 564 2017 年 1 月 24 日 564 2017 年 8 月 30 日 700 2018 年 2 月 7 日 713 2018 年 9 月 4 日 713 2019 年 2 月 26 日 713 2019 年 9 月 3 日 72 且 80 2020 年 3 月 3 日 725 且 80 2020 年 9 月 8 日 73 且 81 2022 年 2 月 8 日 80 且 82 2023 年 2 月 14 日 81 且 83 2024 年第一季 82 且 83 來源：Laravel 功能 以下幾點為 Laravel 的核心設計理念其餘未具體指出的，可以參考 Laravel 3 技術檔案的功能敘述 Eloquent ORM 物件關係對映：將 Active Record 模式 以 PHP 實作，提供一些函式來建立 資料庫 物件之間的關聯。 依照 Active Record 模式的原則，Eloquent ORM 以 類別 代表 資料表，並將這些類別的物件例項與資料表中的單一筆資料做繫結。 Query builder：於 Laravel 3 釋出，提供一個能更直接的存取 Eloquent ORM 的管道。 與其撰寫 SQL 查詢語法，Laravel 的 query builder 提供了一系列的類別與 函式，得以使用程式化呼叫的方式來執行 SQL 查詢。 同時也可以對查詢語法的執行結果做（可再被查詢的）快取。 Application logic：在專案中將其他已開發的功能整合，顯著的案例為 Controller 的使用與路由的宣告。 其語法與 Sinatra 框架相似。 Reverse routing：為專案內的超連結建立成一個一個的路由，當套用了路由的超連結被修改，便會自動更新所有使用了該路由的超連結。 使用時需要填入要使用的路由的名稱，Laravel 會將他們轉換成對應的 URIs。 Restful controllers：提供一種將 HTTP GET 和 POST requests 背後的邏輯切割的方式。 Class auto loading：自動載入 PHP 的類別，不須手動維護所有類別的引用路徑。類別只會在被使用到的當下才載入，避免載入不須要的類別。 View composers：是可自定義的一些程式碼區塊，當 view 被載入時便會被執行。 Database seeding：提供一種管道來把預設的資料用來填充到資料庫，便於進行軟體測試，或被作為應用程式最初的建置步驟。 Filesystem：於 Laravel 50 新增，統一了 檔案系統 的函式，讓本地端和 雲端 儲存空間（如 亞馬遜 S3、Rackspace Cloud）的操作邏輯一致。 單元測試 也被整合到了 Laravel，其包括的測試案例能夠偵測並預防框架內的迴歸，並可以使用 Artisan CLI 來執行單元測試 Homestead： 一個 Vagrant 虛擬機器，預載了 Laravel 開發者需要的所有開發工具，包括 Ubuntu，Gulp，Bower 以及其他輔助網頁開發的工具。 Lazy Collection：於 Laravel 6 新增，使用 PHP 的 generators 來處理大量資料，同時保持較低的記憶體使用率。 官方提供的套件 可透過 Composer 以及 Packagist 安裝下列套件： Cashier：於 Laravel 42 推出，可串接訂閱制付款服務如 Stripe，並提供 優惠券 和 收據 等功能。 Envoy：於 Laravel 42 推出，提供了簡潔、輕量的語法，定義遠端伺服器上執行的常見任務，使用 Blade 風格的語法，可以簡單的設定部署任務、執行 Artisan 指令等。 Socialite：於 Laravel 50 推出，簡化串接 OAuth 的流程，提供平臺如 Facebook、Twitter、Google、GitHub 和 Bitbucket。 Passport：於 Laravel 53 推出，完整的 OAuth2 伺服器實現。 Scout：於 Laravel 53 推出，Eloquent 全文搜尋套件，預設使用 Algolia 驅動。 Dusk：於 Laravel 54 推出，易於使用的瀏覽器自動化測試套件。 Horizon：於 Laravel 55 推出，以 Redis 為基礎的 Laravel 佇列儀錶板和設定系統。 Telescope：於 Laravel 57 推出，提供簡潔的儀錶板，監控應用程式的請求 Request、異常 Exception、日誌 Log、資料庫查詢 Database queries、排隊的作業 Queued jobs、郵件 Mail、通知 Notifications、快取操作、計劃任務 Notifications、變數監控 variable dumps 等。 Sanctum：於 Laravel 70 推出，為單頁應用、移動應用程式和基於令牌的簡單 API，提供了輕巧的身份驗證系統。 Artisan CLI Laravel 的 命令列介面 CLI，稱為 Artisan，於 Laravel 3 推出時功能還相當有限。 隨後 Laravel 將架構改為以 Composer 作為基底，讓 Artisan 得以和 Symfony 框架的元件互補，也因此 Laravel 4 的 Artisan 提供了更多的功能。 Artisan 的功能被分散到不同的子命令，用以協助打造與管理這些由 Laravel 建構而成的軟體。最常見的使用情境如：操作資料庫的 migration seeding、汲取套件的靜態資源、為新建立的 controller 或 migration 產生程式碼樣板（為開發者省去重複撰寫相同程式碼的時間）。開發者也可以自行新增新的命令，來擴充 Artisan 的功能（如自動化的執行任務）。 研討會 Laracon Laracon 為 Laravel 官方舉辦的研討會，曾在美國、歐洲和網路上舉辦，主題囊括 Laravel 的開發、使用、和與其有關的軟體開發議題。每年的會議具有各種不同的贊助者和組織成員，但 Laravel 官方、Laravel News 和 UserScape 通常是主要的組織成員。 一般來說，每一年都會在美國和歐洲舉辦一次研討會。而 2017 年 Laracon 也首度於網路上舉辦，未來也將會有更多活動以類似形式出現在網路上。 目前已經舉辦了以下場次： 日期 位置 2013 年 2 月 2223 日 華盛頓特區 2013 年 8 月 3031 日 阿姆斯特丹 2014 年 5 月 1516 日 紐約市 2014 年 8 月 2830 日 阿姆斯特丹 2015 年 8 月 1112 日 肯塔基州路易斯維爾 2015 年 8 月 2526 日 阿姆斯特丹 2016 年 7 月 2729 日 肯塔基州路易斯維爾 2016 年 8 月 2324 日 阿姆斯特丹 2017 年 8 月 線上舉辦 2017 年 7 月 2526 日 紐約市 2017 年 8 月 2830 日 阿姆斯特丹 LaravelConf Taiwan LaravelConf Taiwan 為 Laravel 道場主辦人兼臺灣的社群推廣者範聖佑發起的研討會。自 2017 年開始，於張榮發基金會國際會議中心舉辦。研討會議程包括技術主題、實做主題以及套件發表會等內容，並自 2021 年起與前端框架 Vue 合辦 Laravel x Vue Conf Taiwan。 目前已經舉辦了以下場次： LaravelConf Taiwan 2017 2017 年 7 月 1 日 LaravelConf Taiwan 2018 2018 年 7 月 8 日 LaravelConf Taiwan 2019 2019 年 7 月 13 日 LaravelConf Taiwan 2020 2020 年 7 月 25 日 Laravel x Vue Conf Taiwan 2021 2021 年 10 月 16 日～10 月 17 日 Laravel x Vue Conf Taiwan 2022 2022 年 12 月 2 日～12 月 3 日 合作夥伴 在 2017 年 4 月 7 日，Taylor Otwell 公告出了 Laravel 網站的「合作夥伴」章節。其目的是為了提供 Laravel 社群一個公司的列表，列表內所列出的公司，都是能夠提供 Laravel 最佳發展和指導的可信公司。 2024 年 1 月，Laravel 的合作夥伴包括： Vehikl Tighten Co Kirschbaum Development Group Active Logic Bacancy Redberry Jump24 Madewithlove Curotec Black Airplane byte5 DevSquad Tighten 64 Robots Kirschbaum Gearbox Solutions CyberDuck 10Code 參見 各網頁框架系統的比較 I have a passion for web designing Our website httpswwwantinoiosandiegowebdesign Antino Labs stands for its conviction With an intention and conviction of emerging as an unparalleled IT Digital Transformation Services platform we at Antino Labs are known for providing impeccable software services using cutting edge technology across the globe We are top rated san diego web design company with a dynamic exposure to the industry we believe in refining and redefining our standard according to the changes in the markets requirements Our multiple years of experience in the industry has enabled us to register our global presence 參考文獻 Category 用 PHP 程式設計的自由軟體 Category 使用 MIT 許可證的軟體 CategoryWeb 應用框架