基于 Laravel + Swoole + Vue 搭建实时在线聊天室(二):后台数据库准备和 API 认证功能实现

上篇教程我们为聊天室项目准备好了开发环境并对项目进行了初始化,今天我们来设置数据库并完成简单的 API 认证功能。 数据库准备 关于数据库这块,我们需要为 Laravel 自带的用户表新增头像字段,然后创建一张消息表用于存放用户发送的消息,以便对历史消息进行查询。 更新用户表 首先,我们运行如下 Artisan 命令生成数据库迁移文件为用户表 users 新增头像字段: php arti...

SMProxy 1.2.9 发布 ! 新增状态命令监控面板功能

Swoole MySQL Proxy 一个基于 MySQL 协议,Swoole 开发的MySQL数据库连接池。 原理 将数据库连接作为对象存储在内存中,当用户需要访问数据库时,首次会建立连接,后面并非建立一个新的连接,而是从连接池中取出一个已建立的空闲连接对象。 使用完毕后,用户也并非将连接关闭,而是将连接放回连接池中,以供下一个请求访问使用。而连接的建立、断开都由连接池自身来管理。 同...

基于 Laravel Prequel 扩展包通过 Web 界面管理 MySQL 数据库

简介 Laravel Prequel 是一个数据库管理工具,可以在某个 Laravel 项目中安装该扩展包,从而实现对数据库的在线管理,这样一来就可以通过它替代掉那些与项目本身分离的、需要独立安装的其它数据库管理工具了,比如 phpMyAdmin、Sequel Pro、Navicat 以及 MySQL Workbench 等。 和 phpMyAdmin 一样,Prequel 需要在浏览器...

基于 Swoole 构建高性能 Laravel 应用系列 —— 基于 SMProxy 通过协程调度实现 MySQL 连接池

简介 我们之前都是基于 LaravelS 扩展在 Laravel 框架中使用 Swoole,但是 LaravelS 不支持数据库连接池,只能实现数据库长连接,而对于 PHP 应用来说,数据库连接池在提升性能方面确有显著功效,我们可以基于 Swoole 提供的异步任务或者协程来自己实现数据库连接池,不过还有一个现成的扩展可以使用,那就是SMProxy,SMProxy 是一个基于 Swool...

使用 laravel-repository 扩展包实现对模型类操作的封装

简介 更多关于 Repository 的使用说明,请戳这里Repository文档地址 laravel-repository 提供了基础的 repository 类, 对laravel 的 model 进行了的封装,提供更多的对外的方法,以及更友好的编辑器提示;对代码进行了的分层,repository 负责对外的业务逻辑处理,model 只负责对数据表的字段、属性、查询条件、返回值的...

[ Laravel从入门到精通 ] 测试系列 —— 通过测试驱动开发构建待办任务项目(一):后端接口和功能测试篇

本来打算写一篇通过 Laravel Dusk 测试前端 Vue 组件的教程,转念一想不如玩把大的,直接基于 Laravel + Vue 构建一个前后端分离的待办任务列表项目,然后在开发过程中通过功能测试用例测试后端 API 接口,通过浏览器测试用例测试前端 Vue 组件与后端的交互,同时引入数据库测试对增删改查进行测试,从而完成一个简单的、相对完整的测试驱动开发项目。 构建应用 创建新项...

php小鲜肉们请看过来~~~

职位诱惑:  公司项目,完善的晋升机制,不提倡加班 薪资:7—10K,年底双薪,每年1-2次晋升机会; 职位描述: 岗位职责: 1、负责网站定制与开发,配合技术部完成中小型网站后台程序及数据库,具备独立解决问题BUG的能力; 2、良好的编码习惯及程序设计功底,能够编写易于维护的代码,能独立开发新功能模块。 任职要求:  1、大专及以上学历,一年以上实际经验; 2、熟练掌...

[ Laravel 5.8 文档 ] 测试系列 —— 数据库测试

简介 Laravel 提供了多个有用的工具让测试数据库驱动的应用变得更加简单。首先,你可以使用辅助函数 assertDatabaseHas 来断言数据库中的数据是否和给定数据集合匹配。例如,如果你想要通过 email 值为 xueyuanjun@laravelacademy.org 的条件去数据表 users 查询是否存在该记录 ,我们可以这样做: public function tes...

[ Laravel 5.8 文档 ] Eloquent ORM —— 访问器和修改器

简介 访问器和修改器允许你在获取模型属性或设置其值时格式化 Eloquent 属性。例如,你可能想要使用 Laravel 加密器对存储在数据库中的数据进行加密,并且在 Eloquent 模型中访问时自动进行解密。 除了自定义访问器和修改器,Eloquent 还可以自动转换日期字段为 Carbon 实例甚至将文本转换为JSON。 访问器 & 修改器 定义访问器 要定义一个访问器,需要在模型...

[ Laravel 5.8 文档 ] Eloquent ORM —— 集合

简介 Eloquent 返回的包含多条记录的结果集都是 Illuminate\Database\Eloquent\Collection 对象的实例,包括通过 get 方法或者通过访问关联关系获取的结果。Eloquent 集合对象继承自 Laravel 的集合基类,因此很自然的继承了很多处理 Eloquent 模型底层数组的方法。 当然,集合也是迭代器,允许你像 PHP 数组一样对其进行循...