Laravel 5.8 Chinese Documentation Manual

Collection(134) share
Read(112078) update time(2022-04-15)

"Laravel 5.1/5.8 Cheatsheet: https://www.php.cn/phpkj/laravel/cheatsheet58.html" Manual introduction: Laravel 5.8 continues to optimize on the basis of Laravel 5.7, including the introduction of new Eloquent relationships ( has-one-through), optimize email verification, automatic registration of authorization policy classes based on agreement, DynamoDB cache and Session driver, optimize time zone configuration of task scheduler, support assigning multiple authentication guards to broadcast channels, PSR-16 cache driver specification etc.


Laravel 是一个由Taylor Otwell所创建,免费的开源PHP Web 框架,旨在实现的Web软件的MVC架构,并作为CodeIgniter的替代方案。其源代码托管于GitHub,许可条款为MIT许可证。

最新课程:php中文网《Laravel基础入门到综合实战线上直播班》正在报名中!

Laravel的特色包含:支持用户身份验证和许可,具有模块化的包系统且有专属的包库,提供连接许多种类的关连式数据库的方式,提供工具来协助应用程序的部署和维持,并且发展出许多语法糖。

Laravel与Symfony、Zend、CodeIgniter、Yii2 和其他框架一起被视为最受欢迎的 PHP 框架之一。

提示:在继续学习laravel框架之前,你需要对PHP语言有基础的了解。

功能

以下几点为 Laravel 的核心设计理念

  • Bundles:Laravel 3 所提供的 包管理系统,能让开发者轻松的将一些套装功能扩展至项目中。 Laravel 4 再进一步的使用 Composer 管理包之间的相依性,也因此得以从 Packagist 上安装泛用于各种框架或 Laravel 专用的 PHP 包。

  • 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:提供一种管道来把默认的数据用来填充到数据库,便于进行软件测试,或被作为应用程序最初的建置步骤。

  • 单元测试 也被集成到了 Laravel,其包括的测试案例能够侦测并预防框架内的回归,并可以使用 Artisan CLI 来运行单元测试.

  • Homestead: 一个Vagrant虚拟机,预载了 Laravel 开发者需要的所有开发工具,包括 Ubuntu,Gulp,Bower 以及其他辅助网页开发的工具。

提示:我们的Laravel 5.8教程将帮助您学习从初级到高级的Laravel 知识。如果你有任何疑问,请前往PHP中文网Laravel 社区提出你的问题,会有热心网友为你解答。

官方提供的包

可透过 composer 以及 packagist 安装下列模块:

  • Cashier 于 Laravel 4.2 推出,可串接订阅制付款服务如 Stripe,并提供 优惠券 和 收据 等功能。

  • SSH,于 Laravel 4.1 推出,允许程序透过 SSH 在远程服务器运行 CLI 指令 。

  • Scheduler, 于 Laravel 5.0 推出,可以透过程序调度 Artisan 指令的运行 cronjob,但仍需依赖 Cron daemon。

  • Flysystem,于 Laravel 5.0 推出,统一了 文件系统 的函数,让本地端和 云端 存储空间(如 亚马逊 S3、Rackspace Cloud)的操作逻辑一致。

  • Socialite,于 Laravel 5.0 推出,简化串接 OAuth 的流程,提供平台如 Facebook, Twitter, Google上, GitHub 和 Bitbucket 等等。:13

Artisan CLI

Laravel 的 命令行接口 (CLI),称为 Artisan,于 Laravel 3 推出时功能还相当有限。 随后 Laravel 将架构改为以 Composer 作为基底,让 Artisan 得以和 Symfony 框架的组件互补,也因此 Laravel 4 的 Artisan 提供了更多的功能。

Artisan 的功能被分散到不同的子命令,用以协助打造与管理这些由 Laravel 建构而成的软件。最常见的使用情境如:操作数据库的 migration & seeding、汲取包的静态资源、为新创建的 controller 或 migration 产生代码模板(为开发者省去重复撰写相同代码的时间)。开发者也可以自行新增新的命令,来扩展 Artisan 的功能(如自动化的运行任务)。

服务器配置

Laravel 对服务器环境有少量的要求。 然而,这些要求可以透过使用家用的虚拟机来达成,因此强烈建议使用家用作为本地的开发环境。

若不使用 Homestead,您需要确保您的服务器满足以下的要求,这里以长期支持版本 Laravel 5.5 为例,如果是最新版本 Laravel 5.8 需要 PHP 版本 >= 7.1.3 :

  • PHP 版本 >= 7.0.0

  • OpenSSL PHP 扩展

  • PDO PHP 扩展

  • Mbstring PHP 扩展

  • Tokenizer PHP 扩展

  • XML PHP 扩展

本Laravel5.8教程手册涵盖的内容

Laravel5.8在 Laravel 5.7 的基础上继续进行优化,包括引入新的 Eloquent 关联关系(has-one-through)、优化邮箱验证、基于约定的授权策略类自动注册、 DynamoDB 缓存及 Session 驱动、优化任务调度器的时区配置、支持分配多个认证 guard 到广播频道、PSR-16 缓存驱动规范等等。

提示:本教程的每一章都包含了很多Laravel实例,您可以直接点击 "运行实例" 按钮在线查看结果。这些例子将帮助您更好地理解和运用Laravel。