[ Laravel 6.0 文档 ] 测试系列 —— 模拟

简介 测试 Laravel 应用的时候,你可能还想要“ 模拟 ”应用的特定状态,以便在测试中不让它们真的执行。例如,测试触发事件的控制器时,你可能想要模拟事件监听器以便它们不在测试期间真的执行。这样的话你就可以只测试控制器的 HTTP 响应,而不必担心事件监听器的执行,因为事件监听器可以在它们自己的测试用例中被测试。 Laravel 开箱为模拟事件、任务以及门面提供了辅助函数,这些辅助函...

[ Laravel 6.0 文档 ] 数据库操作 —— Redis

简介 Redis 是一个开源的、高级的键值对存储系统,经常被用作数据结构服务器,因为其支持字符串、Hash、列表、集合和有序集合等数据结构。 在 Laravel 中使用 Redis 之前,推荐通过 PECL 安装 PHP 扩展 PhpRedis,该扩展安装起来更麻烦,但是对重度使用 Redis 的应用而言性能更好。 作为替代方案,你还可以通过 Composer 安装 predis/pre...

[ Laravel 6.0 文档 ] 进阶系列 —— 任务调度

简介 Cron 是 UNIX、SOLARIS、LINUX 下的一个十分有用的工具,通过 Cron 脚本能使计划任务定期地在系统后台自动运行。这种计划任务在 UNIX、SOLARIS、LINUX下术语为 Cron Jobs。Crontab 则是用来记录在特定时间运行的 Cron 的一个脚本文件,Crontab 文件的每一行均遵守特定的格式: 我们可以在服务器上通过 crontab -e ...

[ Laravel 6.0 文档 ] 进阶系列 —— 队列

简介 注:Laravel 现在提供了基于 Redis 的,拥有美观的后台和配置系统的 Horizon 队列扩展包,完整信息参考 Horizon文档。 Laravel 队列为不同的后台队列服务提供了统一的 API,例如 Beanstalk,Amazon SQS,Redis,甚至其他基于关系型数据库的队列。队列的目的是将耗时的任务延时处理,比如发送邮件,从而大幅度缩短 Web 请求和响应...

[ Laravel 6.0 文档 ] 进阶系列 —— 通知

简介 除了支持发送邮件之外,Laravel 还支持通过多种传输通道发送通知,这些通道包括邮件、短信(通过 Nexmo)以及 Slack 等。通知可以存储在数据库以便后续在 Web 界面中显示。 通常,通知都是很短的、用于告知用户应用中所发生事件的消息。例如,如果你在开发一个计费应用,则需要通过邮件或短信等渠道给用户发送“账单支付”通知。 创建通知 在 Laravel 中,每个通知都以单独...

[ Laravel 6.0 文档 ] 进阶系列 —— 邮件

简介 Laravel 基于 SwiftMailer 库提供了一套干净、清爽的邮件 API。Laravel 为 SMTP、Mailgun、Postmark、SparkPost、Amazon SES、以及 sendmail 提供了相应的驱动,从而允许你快速通过本地或云服务发送邮件。 邮件驱动预备知识 基于 API 的驱动如 Mailgun、SparkPost 和 Postmark 通常比 S...

[ Laravel 6.0 文档 ] 进阶系列 —— 事件

简介 Laravel 事件提供了简单的观察者模式实现,允许你订阅和监听应用中的事件。事件类通常存放在 app/Events 目录,监听器存放在 app/Listeners。如果你在应用中没有看到这些目录,不要担心,它们会在你使用 Artisan 命令生成事件和监听器的时候自动创建。 事件为应用功能模块解耦提供了行之有效的解决办法,因为单个事件可以有多个监听器而这些监听器之间并不相互依赖。...

[ Laravel 6.0 文档 ] 进阶系列 —— 广播

简介 在很多现代 Web 应用中,Web 套接字(WebSockets)被用于实现实时更新的用户接口。当一些数据在服务器上被更新,通常一条消息通过 Websocket 连接被发送给客户端处理。这为我们提供了一个更强大的、更有效的选择来持续拉取应用的更新。 为帮助你构建这样的应用,Laravel 让通过 Websocket 连接广播事件变得简单。广播 Laravel 事件允许你在服务端和客...

Laravel 6.0 将新增为指定队列任务设置中间件的功能

Taylor Otwell 在 Laravel 6 中新增了为指定队列任务设置中间件的能力,以便我们在执行某些队列任务之前先执行一些业务逻辑: This [pull request] adds an easy way to have job specific middleware for queued jobs. Global job middleware were actually ...

基于 Swoole 构建高性能 Laravel 应用系列 —— 基于 Process 模块在 PHP 中实现多进程(二):进程间通信

在上篇教程中,学院君给大家介绍了通过 Swoole 提供的 Process 模块可以在 PHP 中实现多进程编程,并且实现了一个简单的多进程 TCP 服务器,但是在该示例中,主进程和子进程之间并没有数据交互,如果主进程需要得到子进程的反馈,或者子进程需要接收来自主进程的数据,那么就需要进程间通信了。 好在 Swoole 的 Process 模块可以很好的支持进程间通信,在基于 Proce...