[ Laravel 5.5 文档 ] 数据库操作 —— 使用进阶:通过查询构建器实现高级功能

 简介 数据库查询构建器提供了一个方便的流接口用于创建和执行数据库查询。查询构建器可以用于执行应用中绝大部分数据库操作,并且能够在 Laravel 支持的所有数据库系统上工作。 注:流接口是一种设计模式,更多关于流接口模式的设计和使用方式,可查看这篇教程:PHP 设计模式系列 —— 流接口模式。 Laravel 查询构建器使用 PDO 参数绑定来避免 SQL 注入攻击,不再需要过滤以绑…

[ Laravel 5.5 文档 ] 数据库操作 —— 快速入门:基本配置和使用、读写分离 & 数据库事务

简介 Laravel 让连接不同数据库以及对数据库进行增删改查操作变得非常简单,不论使用原生 SQL、还是查询构建器,还是 Eloquent ORM。目前,Laravel 支持四种类型的数据库系统: MySQL Postgres SQLite SQL Server 配置 应用的数据库配置位于 config/database.php(但是数据库用户及密码等敏感信息位于 .env 文件,如果…

Laravel 开发工具系列 —— 使用 Visual Studio Code 进行 Laravel 开发

关于 Laravel 代码开发工具大家各有所好,大部分应该在用 PHPStorm,Sublime 也有很多粉丝,还有人喜欢 Atom,不过今天要给大家推荐的是微软旗下新推出的编辑器 —— Visual Studio Code,注意这货不是 Visual Studio 那个庞然大物,一字之差,如隔三秋,它只有 46M 的体量,配合丰富的插件库,可以快速搭建适用于各种编程语言的开发利器,比如…

[ Laravel 5.5 文档 ] 处理用户请求 —— 异常处理 & 错误日志

简介 Laravel 默认已经为我们配置好了错误和异常处理,我们在 App\Exceptions\Handler 类中触发异常并将响应返回给用户。本教程我们将深入探讨这个类。 注:关于 Laravel 异常处理底层原理和实现可以参考学院的这篇教程了解更多 —— 《深入探讨 PHP 错误异常处理机制及 Laravel 框架底层的相应实现》 此外,Laravel 还集成了 Monolog 日…

基于高性能算法实现的优雅 ID 混淆扩展包 —— Laravel Hashid

Laravel Hashid 整合了 Base62、Base64、Hashids、Hex、Optimus 等高性能编码算法,并提供了统一的、优雅的、简单易用的调用接口,将「敏感数据」混淆(编码)成可还原的、非连续的、URL 安全的标识符 (ID) 。 应用场景示例 不希望对外暴露有规则的数据索引,比如用户 ID 、媒体资源 ID 、商品 ID 、订单号、注册码、优惠码等,防止爬虫侵扰。 …

使用 laravel-google-authenticator 扩展包为你的网站打造一个动态手机令牌

Google 身份验证器与两步验证功能配合,可在您登录 Google 帐户时为您平添一重安全保障。启用两步验证之后,当您登录帐户时,需要提供密码和此应用生成的验证码。配置完成后,无需网络连接或蜂窝连接即可获得验证码。 为什么使用两步认证 相对于验证码,安全很多;几乎是不会存在破解的方法 验证码有时候无法识别,不方便操作 一机一码,不会存在账号盗用的问题 动态验证,每30秒生产一个验证码,…

[ Laravel 5.5 文档 ] 处理用户请求 —— 请求表单验证及错误处理大全

 简介 Laravel 提供了多种方法来验证请求输入数据。默认情况下,Laravel 的控制器基类使用 ValidatesRequests trait,该 trait 提供了便捷方法通过各种功能强大的验证规则来验证输入的 HTTP 请求。 快速入门 要掌握 Laravel 强大的验证特性,让我们先看一个完整的验证表单并返回错误信息给用户的示例。 定义路由 首先,我们假定在 routes…

API 鉴权新姿势 – 签名鉴权扩展包:laravel-api-auth

简介 laravel-api-auth 是一个 Laravel API 鉴权包,使用密钥 + 随机字符串 + 时间戳做种子加密生成签名的鉴权方式,只要客户端不被反编译从而泄露密钥,该鉴权方式理论上来说是安全的(不考虑量子计算机的出现)。 项目地址: github.com/96qbhy/laravel-api-auth 安装 在项目根目录下使用 Composer 进行安装: compose…

[ Laravel 5.5 文档 ] 处理用户请求 —— Session 实现、配置与使用详解

简介 由于 HTTP 协议本身是无状态的,上一个请求与下一个请求无任何关联,为此我们引入 Session 来存储用户请求信息以解决特定场景下无状态导致的问题(比如登录、购物)。Laravel 通过简洁的 API 统一处理后端各种 Session 驱动,目前开箱支持的流行后端驱动包括 Memcached、Redis 和数据库。 学院君注:Laravel 并没有使用 PHP 内置的 Sess…

阿里云 Ubuntu 14.04 LTS 中将 PHP 从 5.5 升级到 7.x 完整笔记

最近桥边红药同学给我反映说 Laravel 学堂用户登录退出功能报错,我去看了下确实如此,查看源码发现是 PHP 版本的问题,Flarum 框架要求 PHP 版本>=5.6.0,而现在服务器上 PHP 的版本是 5.5.9,所以有必要进行升级,为了一步到位,直接升级到 PHP 7.0 版本。现将升级步骤记录如下,以供有类似需求同学参考。 注:服务器环境是阿里云 ECS Ubuntu…