[ Laravel 5.3 文档 ] Eloquent ORM —— 关联关系

1、简介 数据表经常要与其它表做关联,比如一篇博客文章可能有很多评论,或者一个订单会被关联到下单用户,Eloquent 使得组织和处理这些关联关系变得简单,并且支持多种不同类型的关联关系: 一对一 一对多 多对多 远层一对多 多态关联 多对多的多态关联 2、定义关联关系 Eloquent 关联关系以Eloquent模型类方法的形式被定义。和 Eloquent 模型本身一样,关联关系也是强…

[ Laravel 5.3 文档 ] Eloquent ORM —— 起步

1、简介 Laravel 自带的 Eloquent ORM 提供了一个美观、简单的与数据库打交道的 ActiveRecord 实现,每张数据表都对应一个与该表进行交互的“模型”,模型允许你在表中进行数据查询,以及插入、更新、删除等操作。 在开始之前,确保在config/database.php文件中配置好了数据库连接。更多关于数据库配置的信息,请查看文档。 2、定义模型 作为开始,让我们…

[ Laravel 5.3 文档 ] 安全 —— 用户授权

1、简介 除了提供开箱即用的认证服务之外,Laravel 还提供了一个简单的方式来管理授权逻辑以便控制对资源的访问权限。和认证一样,在Laravel中实现授权很简单,主要有两种方式:gates和policies。 可以将gates和policies分别看作路由和控制器,gates提供了简单的基于闭包的方式进行授权,而policies和控制器一样,对特定模型或资源上的复杂授权逻辑进行分组,…

最佳实践系列(三)—— PHP 安全三板斧:过滤、验证和转义之过滤篇 & Laravel底层SQL注入规避

我们在开发应用时,一般有个约定:不要信任任何来自不受自己控制的数据源中的数据。例如以下这些外部源: $_GET $_POST $_REQUEST $_COOKIE $argv php://stdin php://input file_get_contents() 远程数据库 远程API 来自客户端的数据 所有这些外部源都可能是攻击媒介,可能会(有意或无意)把恶意数据注入PHP脚本。编写接…

Laraval IDE 自动补全助手:Laravel IDE Helper Generator 

1、简介 该扩展包可以生成一个IDE可以理解的文件,以便提供精准的自动补全功能。这个生成的文件基于项目中存在的文件,所以永远是实时的。当然如果你不想手动生成这个文件,也可以使用预生成的文件并把它们放到项目根目录下(这些文件就没有那么实时了): Larval 5:https://gist.github.com/barryvdh/5227822 Lumen:https://gist.gith…

使用 Laravel Generator 快速为 Laravel 应用生成CRUD、API、测试用例代码 —— 使用篇

API生成器 要生成API,我们可以使用如下命令: php artisan infyom:api $MODEL_NAME$ 其中$MODEL_NAME$需要替换成你的模型名称,例如: php artisan infyom:api Post 然后需要在命令行手动输入模型对应表的字段: 这里我们暂且输入title和content字段(id和时间戳会自动生成无需在这里添加),完成后输入exit…

[ Laravel 5.2 文档 ] 新手入门指南 —— 带用户功能的任务管理系统

1、简介 本进阶指南提供了对Laravel框架更深入的介绍,包括数据库迁移、Eloquent ORM、路由、认证、授权、依赖注入、验证、视图以及Blade模板。如果你对Laravel框架或其他PHP框架已经有了基本的认识,本章节将是你新的起点,如果你完全还是新手,请从新手入门指南开始。 本节的示例仍然是构建一个任务系统,但是在上一节基础上,本任务系统将允许用户注册登录,同样完整的代码已经…

[ Laravel 5.2 文档 ] 新手入门指南 —— 简单任务管理系统

1、简介 快速入门指南会对Laravel框架做一个基本介绍,包括数据库迁移、Eloquent ORM、路由、验证、视图以及Blade模板等等。如果你是个Laravel新手甚至之前对PHP框架也很陌生,那么这里将会成为你的良好起点。如果你已经使用过Laravel获取其它PHP框架,可以考虑跳转到进阶指南(翻译中)。 为了演示Laravel特性的基本使用,我们将将会构建一个简单的、用于追踪所…

[ Laravel 5.2 文档 ] 服务 —— 分页

1、简介 在其他框架中,分页是件非常痛苦的事,Laravel则使其变得轻而易举。Laravel能够基于当前页智能生成一定范围的链接,且生成的HTML兼容Bootstrap CSS 框架。 2、基本使用 2.1 基于查询构建器分页 有多种方式实现分页,最简单的方式就是使用查询构建器或Eloquent模型的paginate方法。该方法基于当前用户查看页自动设置合适的偏移(offset)和限制…

[ Laravel 5.2 文档 ] 服务 —— 用户授权

1、简介 除了提供开箱即用的认证服务之外,Laravel 还提供了一个简单的方式来管理授权逻辑以便控制对资源的访问权限。在 Laravel 中,有多种方法和辅助函数来协助你管理授权逻辑,本文档将会一一覆盖这些方法。 2、定义权限(Abilities) 判断用户是否有权限执行给定动作的最简单方式就是使用 Illuminate\Auth\Access\Gate 类来定义一个“权限”。我们在A…