Laravel 5.3 新功能一览

发布于 作者

A look at what’s coming to Laravel 5.3 image

Laravel 5.3 现已发布 并可供所有人使用。以下是这些新功能的简要概述

Laravel Scout

Laravel Scout 是一个基于驱动程序的 Eloquent 全文搜索引擎。它开箱即用地支持 Algolia,而且由于它基于驱动程序,社区中的任何人都可以创建他们自己的与其他全文搜索系统的集成。

Scout 通过在现有模型中实现 “Searchable” 特性来工作。然后只需将数据与搜索服务同步,例如这样

php artisan scout:import App\\Post

之后你可以使用以下方法搜索你的模型

Post::search('Alice')->get();

你甚至可以进行分页

Post::search('Alice')->paginate()

它甚至包括简单的 where 子句

Post::search(‘Alice’)—>where('acount_id', '>', 1)->paginate()

Laravel Mailable

Laravel Mailable 是一个新的 Mail 类,用于以表达方式发送电子邮件

Mail::to('laravel@example.com')->send(new OrderComplete);

当然你也可以使用所有其他的邮件功能

Mail::to('laravel@example.com')->cc('john@example.com')->queue(new OrderComplete);

Laravel Notifications

Laravel Notifications 允许你通过 Slack、短信或电子邮件等服务快速更新。

通知附带了一个响应式的交易电子邮件模板。在你的通知类中,发送消息所需的所有代码如下

$this->line('Thank you for joining')
->action('Button Text', 'http://url.com')
->line('If you have any questions please hit reply')
->success()

或者如果这是一个错误

$this->line('Sorry we had a problem with your order')
->action('Button Text', 'http://url.com')
->error()

Laravel Passport

Laravel Passport 是一个可选的软件包,它是一个开箱即用的完整 oAuth 2 服务器。

你可以设置你的范围,Vue.js 组件用于令牌生成、撤销令牌等等。

回滚单个迁移

迁移中添加了一个新功能,允许你 只回滚单个迁移 而不是整个批次

php artisan migrate:rollback --step=1

Blade Foreach 循环

在 Blade foreach 循环内部,你现在可以访问一个 $loop 变量。这将允许你做类似的事情

@if($loop->first)
Do something on the first iteration.
@endif
 
@if($loop->last)
Do something on the last iteration.
@endif

Eloquent 集合被干净地序列化并被排队作业重新拉取

在 5.3 中,Eloquent 集合被干净地序列化并被排队作业重新拉取,就像单个模型一样! pic.twitter.com/IZ5t118WNT

— Laravel (@laravelphp) 2016 年 5 月 31 日

Jacob Bennett 告诉我们 为什么这很重要

队列控制台输出更改为显示实际类名

清理 Laravel 队列控制台输出,使其显示实际类名,而不是每个作业的 “CallQueuedHandler”。???? pic.twitter.com/iYKAhTHaeU

— Taylor Otwell (@taylorotwell) 2016 年 6 月 1 日

自定义简单分页功能

今天在 Laravel 5.3 开发中。通过视图重新引入简单分页自定义功能。???? pic.twitter.com/Ir28svVGCA

— Taylor Otwell (@taylorotwell) 2016 年 6 月 1 日

First Or Create

现在 firstOrCreate 允许传递额外的值。示例

return User::firstOrCreate(['github_id', $githubUser->id], ['avatar' => $githubUser->avatar]);

Query Builder 现在将返回一个集合

Query Builder 以前总是返回数组,现在它将 返回一个集合。这将使结果保持一致,无论你如何提取数据

$collection = DB::table('posts')->get();

多个迁移路径

现在你可以从服务提供者加载自己的迁移路径

$this->loadMigrationsFrom('path/to/migrations/folder')

有关更多信息,Alex Bowers 提供了一个概述。

Laravel Echo

Laravel Echo 是一个旨在改进当前事件广播系统的新功能。查看 Laracasts 视频 以了解更多信息。

新的缓存助手

cache() 全局助手可以执行三个主要功能:获取、放置或返回一个后端服务的实例。有关更多详细信息,请查看 Matt Stauffer 的 文章。


该列表只涵盖了一些重大变化,但 Laravel 5.3 有望成为一个不错的版本,并将 在 Laracon 正式宣布。务必加入 Laravel 新闻通讯,以便在 5.3 正式发布后获得通知。

Eric L. Barnes photo

Eric 是 Laravel 新闻的创建者,从 2012 年开始报道 Laravel。

Cube

Laravel 新闻通讯

加入 40,000 多名其他开发者,绝不错过新的技巧、教程等。

Laravel Forge logo

Laravel Forge

轻松创建和管理你的服务器,并在几秒钟内部署你的 Laravel 应用程序。

Laravel Forge
Tinkerwell logo

Tinkerwell

Laravel 开发人员必备的代码运行器。使用 AI、自动完成和对本地和生产环境的即时反馈进行调试。

Tinkerwell
No Compromises logo

No Compromises

Joel 和 Aaron 是来自 No Compromises 播客的两位经验丰富的开发人员,现在可以为你的 Laravel 项目雇用。 ⬧ 每月 7,500 美元的固定费用。 ⬧ 没有冗长的销售流程。 ⬧ 没有合同。 ⬧ 100% 返款保证。

No Compromises
Kirschbaum logo

Kirschbaum

提供创新和稳定性,确保你的 Web 应用程序取得成功。

Kirschbaum
Shift logo

Shift

正在运行旧版本的 Laravel?即时、自动化的 Laravel 升级和代码现代化,让你的应用程序保持新鲜感。

Shift
Bacancy logo

Bacancy

为你的项目配备一位经验丰富的 Laravel 开发人员,拥有 4-6 年的经验,每月只需 2,500 美元。获得 160 小时的专业知识和 15 天的免费试用。立即预约电话!

Bacancy
Lucky Media logo

Lucky Media

立即获得幸运 - 拥有超过 10 年经验的 Laravel 开发的理想选择!

Lucky Media
Lunar: Laravel E-Commerce logo

Lunar:Laravel 电子商务

Laravel 的电子商务。一个开源软件包,将现代无头电子商务功能的强大功能带到 Laravel。

Lunar:Laravel 电子商务
LaraJobs logo

LaraJobs

官方 Laravel 职位板

LaraJobs
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit:Laravel SaaS 启动工具包

SaaSykit 是一个 Laravel SaaS 启动工具包,它包含运行现代 SaaS 所需的所有功能。支付、精美结账、管理面板、用户仪表板、身份验证、即用型组件、统计数据、博客、文档等等。

SaaSykit:Laravel SaaS 启动工具包
Rector logo

Rector

您的无缝 Laravel 升级合作伙伴,降低成本,加速创新,助力企业成功

Rector
MongoDB logo

MongoDB

通过 MongoDB 和 Laravel 的强大集成来增强您的 PHP 应用程序,使开发人员能够轻松高效地构建应用程序。支持事务、搜索、分析和移动用例,同时使用熟悉的 Eloquent API。探索灵活的现代 MongoDB 数据库如何改变您的 Laravel 应用程序。

MongoDB
Maska is a Simple Zero-dependency Input Mask Library image

Maska 是一个简单的零依赖输入掩码库

阅读文章
Add Swagger UI to Your Laravel Application image

在您的 Laravel 应用程序中添加 Swagger UI

阅读文章
Assert the Exact JSON Structure of a Response in Laravel 11.19 image

在 Laravel 11.19 中断言响应的精确 JSON 结构

阅读文章
Build SSH Apps with PHP and Laravel Prompts image

使用 PHP 和 Laravel Prompts 构建 SSH 应用程序

阅读文章
Building fast, fuzzy site search with Laravel and Typesense image

使用 Laravel 和 Typesense 构建快速模糊网站搜索

阅读文章
Add Comments to your Laravel Application with the Commenter Package image

使用 Commenter 包在您的 Laravel 应用程序中添加评论

阅读文章