【Laravel】
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月发布。 新的特点包括：提供周期性地执行任务的排程器 Scheduler，提供一个抽象层 Flysystem ，让远端与本地端的 档案系统 能有相同的操作方式，提供 Elixir 以管理静态资源，并提供了可简化串接 OAuth 登入的套件 Socialite 。 Laravel 5 也同时修改了 目录结构 。
Laravel 5.1
2015年6月发布，是 Laravel 的第一个 长期支援版本（LTS） ，并计划提供两年的 错误修正 和三年的 安全性更新 。 同时也预计未来每两年会发布一次新的 LTS 版本。
Laravel 5.3
于2016年8月23日发布。此版本著重在协助使用者加速开发，并提供了优化开发流程的工具。
Laravel 5.4
2017年1月24日发布。此版本提供了许多新功能，像 Laravel Dusk，Laravel Mix，Components & Slots（Blade），Markdown Emails，自动 Facades、路由的优化，collection 的高阶函数，还有很多其他功能。
Laravel 6.0
2019年9月3日发布。引入语义化版本控制，兼容 Laravel Vapor，优化授权响应、Job Middleware、Lazy Collections 和 Sub-query 等功能。移除预设的前端脚手架，并转移至 Laravel UI 套件。
Laravel 7.0
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.0
2020年9月8日发布。Laravel 8通过引入Laravel Jetstream、模型工厂类、迁移压缩、队列批处理、改善速率限制、队列改进、动态Blade组件、Tailwind分页视图、时间测试助手、artisan serve的改进、事件监听器的改进，以及各种其他错误修复和可用性改进，对Laravel 7.x继续进行了改善。
=== 版本发布纪录 ===
自Laravel 9开始，所有版本均提供18个月的错误修正与2年的安全性更新。
来源: Laravel
== 功能 ==
以下几点为 Laravel 的核心设计理念
*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 5.0 新增，统一了 档案系统 的函式，让本地端和 云端 储存空间（如 亚马逊 S3、Rackspace Cloud）的操作逻辑一致。
* 单元测试 也被整合到了 Laravel，其包括的测试案例能够侦测并预防框架内的回归，并可以使用 Artisan CLI 来执行单元测试.
* Homestead： 一个Vagrant虚拟机，预载了 Laravel 开发者需要的所有开发工具，包括 Ubuntu，Gulp，Bower 以及其他辅助网页开发的工具。
* Lazy Collection：于 Laravel 6 新增，使用 PHP 的 generators 来处理大量资料，同时保持较低的内存使用率。
=== 官方提供的套件 ===
可透过 Composer 以及 Packagist 安装下列套件：
* Cashier：于 Laravel 4.2 推出，可串接订阅制付款服务如 Stripe，并提供 优惠券 和 收据 等功能。
* Envoy：于 Laravel 4.2 推出，提供了简洁、轻量的语法，定义远程服务器上运行的常见任务，使用 Blade 风格的语法，可以简单的设置部署任务、执行 Artisan 指令等。
* Socialite：于 Laravel 5.0 推出，简化串接 OAuth 的流程，提供平台如 Facebook、Twitter、Google、GitHub 和 Bitbucket。
* Passport：于 Laravel 5.3 推出，完整的 OAuth2 服务器实现。
* Scout：于 Laravel 5.3 推出，Eloquent 全文搜寻套件，预设使用 Algolia 驱动。
* Dusk：于 Laravel 5.4 推出，易于使用的浏览器自动化测试套件。
* Horizon：于 Laravel 5.5 推出，以 Redis 为基础的 Laravel 队列仪表板和设定系统。
* Telescope：于 Laravel 5.7 推出，提供简洁的仪表板，监控应用程式的请求(Request)、异常(Exception)、日志(Log)、资料库查询(Database queries)、排队的作业(Queued jobs)、邮件(Mail)、通知(Notifications)、缓存操作、计划任务(Notifications)、变量监控(variable dumps)等。
* Sanctum：于 Laravel 7.0 推出，为单页应用、移动应用程序和基于令牌的简单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也首度于网路上举办，未来也将会有更多活动以类似形式出现在网路上。
目前已经举办了以下场次：
Taylor Otwell，2013 年在美国的 Laracon
=== 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 最佳发展和指导的可信公司。 2017年9月，Laravel 的合作伙伴包括：
* Vehikl
* Tighten Co.
* Kirschbaum Development Group