现代 PHP 新特性系列(四) —— 生成器的创建和使用

1、概述 生成器是 PHP 5.5 引入的新特性,但是目测很少人用到它,其实这是个非常有用的功能。 生成器和迭代器有点类似,但是与标准的PHP迭代器不同,PHP生成器不要求类实现Iterator接口,从而减轻了类的开销和负担。生成器会根据需求每次计算并产出需要迭代的值,这对应用的性能有很大的影响:试想假如标准的PHP迭代器经常在内存中执行迭代操作,这要预先计算出数据集,性能低下;如果要使…

为 Laravel 应用快速生成 HTML 导航菜单的扩展包:Laravel Menu

几乎每个网站都有导航菜单,生成这些HTML导航菜单看似简单,但随着菜单数目的增加也会变得越来越麻烦:不仅仅是要渲染一些基本的HTML,更多时候往往还需要管理哪些菜单当前是激活的,如果某个菜单还有子菜单你还想要让被激活的子菜单的父级也是被激活的,更有甚者,有时候你还需要在一些菜单项之间插入HTML。 为此,我编写了一个扩展包(GitHub地址:https://github.com/spat…

使用 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 Generator 快速为 Laravel 应用生成CRUD、API、测试用例代码 —— 安装篇

在开始使用Laravel Generator之前我们先来安装它,首先需要添加这些包到composer.json文件的require-dev: “infyomlabs/laravel-generator”: “dev-master”, “infyomlabs/core-templates”: “dev-master”, “laravelcollective/html”: “5.2.*” 注…

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

很多项目中我们都需要做创建API、CRUD这类事情,我们所面临的问题是每次都要创建一堆迁移文件、模型类、控制器、Repository甚至是测试用例,这些文件基本结构一致,只是类名不同而已,我们需要简化这个过程,使用统一模板快速生成这些类文件,为此诞生了第一个扩展包laravel-api-generator,在短时间内这个扩展包获得了大量关注,吸引了Laravel社区的很多人开始使用它,同…