首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Laravel 编写高级 Artisan 命令

在上一篇教程,学院君向大家介绍了什么是 Artisan 命令,系统内置 Artisan 命令,以及如何编写一个简单 Artisan 命令。...因此,在这篇教程,我们将更进一步,一起来看下如何编写更加高级 Artisan 命令,比如带输入参数、选项,以及能够与用户互动,输出图表/进度条 Artisan 命令。...Laravel Artisan 提供了很多方法支持用户输入不同类型数据。...在应用代码调用 Artisan 命令 除了在命令行运行 Artisan 命令之外,还可以在应用代码通过 Artisan 门面调用它。...你还可以在一个 Artisan 命令调用另一个 Artisan 命令,在命令调用 Artisan 命令,可以通过 Artisan:call(),也可以直接通过 this->call() 方法,还可以通过

8.2K20
您找到你想要的搜索结果了吗?
是的
没有找到

Laravel 编写第一个 Artisan 命令

,在 Laravel ,我们可以通过三种工具实现命令行交互: ArtisanLaravel 内置命令行操作工具集,支持自定义命令; Tinker:一个由 PsySH 扩展包驱动 REPL,允许你通过命令行与整个...不同 Laravel 应用由于安装了不同扩展包或编写了自定义 Artisan 命令,所以在当你准备了解一个新应用时,有必要通过 php artisan list 快速浏览该应用支持所有命令。...内置 Artisan 命令 运行 php artisan list 命令后,你会看到新安装 Laravel 应用默认提供了很多 Artisan 命令,我们不可能把每一个都讲一遍下来(实际上,我们会在每篇教程中分散提到...Artisan 命令,这种需求在实际项目开发还是常有的,比如数据迁移、数据修复、定时任务等。...基于闭包实现简单业务逻辑一样,对于这么简单命令,我们也可以在 routes/console.php 基于闭包实现: Artisan::command('welcome:message_simple

3.1K20

Laravel 控制台命令artisan

laravel 控制台命令artisan ArtisanLaravel自带命令行接口,它提供了许多实用命令来帮助你构建Laravel 应用。...生成命令# 要创建一个新命令,可以使用 Artisan 命令make:command。这个命令会在 app/Console/Commands 目录创建一个新命令类。...不必担心应用不存在这个目录,因为它会在你第一次运行 Artisan 命令 make:command 时创建。...生成命令会包括所有命令默认存在属性和方法: php artisan make:command HelloWord 命令生成后,应先填写类 signature 和 description 属性,这会在使用......... ok,这就是如何使用laravel 生成artisan 命令 更多完整功能,请查阅官方文档laravel5.5文文档

1.2K10

laravel php artisan migrate 数据迁移时出现错误

(zz找了块一个小时才发现)主要错误在于.env文件和database.php配置不匹配。...1.找到.env文件 2.更改数据库表账密 3.改database.php数据库账密 4.完成 总结:php artisan migrate 只有两个表migrations和“users”,...没有password_resets表 1.将数据库 Innodb_large_prefix设置为1 mysql> show variables like ‘innodb_large_prefix’...——-+ | Variable_name | Value | +———————+——-+ | innodb_large_prefix | OFF | +———————+——-+ 2.laravel....env配置和databases.php配置对应,如上图, 3.删除本地数据库,重新执行PHP artisan miragate 命令 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn

85710

3分钟短文|Laravel命令行调用控制器方法,你会几个?

引言 有时候为了不重写代码,避免冗余无用重复代码在程序内到处都是。我们总是想方设法 把写过逻辑拿过来使用。 今天要说就是在laravel,能不能在命令调用控制器方法, 怎么去实现?...学习时间 为了快速测试控制器方法可不可行,我们有时候会想,能不能像这样在命令行直接访问某个控制器路由方法。...于是我们想,既然laravel提供了artisan命令行调用,何不先做一个命令,然后在命令内使用程序方法 调用控制器呢。说来就动手开写。 首先创建一个命令类。...php artisan make:command CallRoute 系统都是按照模板生成 CallRoute.php 文件,我们只捡特殊部分贴出来。首先定义命令格式和传入参数。...为了让你命令laravel生命周期内可被注册,还需要手动注册一下。

1.7K10

Laravel Migrate Fresh 和 Refresh 命令

任何一位 Laravel 开发者都肯定对于 migrate:refresh 这个命令很熟悉了,特别是首次发布上线前,随着开发进行,对 migration 文件不断做修改,就会一次又一次地运行这个命令来重建数据库...而在 Laravel 5.5 版本,对这个命令又进行了一次增强。...或者说增加了一个相似但又有所区别的命令:migrate:fresh. refresh 和 fresh 命令区别在于:fresh 命令不按照 migrations 表里记录逐步回滚,而是通过删除数据库里所有表来跳过还原和回滚步骤...通过两个命令输出可以清楚地看到区别: $ php artisan migrate:refresh Rolling back: 2014_10_12_100000_create_password_resets_table...接下来再看看 fresh 命令输出: $ php artisan migrate:fresh Dropped all tables successfully.

3.5K40

Laravel系列6.2】Laravel服务容器

Laravel服务容器 我们已经了解了服务容器是个什么东西,也知道了依赖、依赖注入、控制反转以及最终服务容器概念和它们要解决问题。...今天,我们就来一起学习一下 Laravel 服务容器是怎么使用,大家一起来看看它是不是和我们上回学习到服务容器是一样。...使用 Laravel 服务容器 在 Laravel 中使用服务容器非常简单,我们首先还是定义那几个测试类,不过这次我们把它们分开到不同文件存储。...下一篇文章我们再看源码,不过 Laravel 源码可比我们自己定义那个要复杂多了。然而,万变不离其宗,思想毕竟都是一致。...通过命令行生成文件,会有两个方法需要我们来实现,分别是 register() 和 boot() ,我们先来看看 register() 方法。

1.4K20

掌握 Laravel 测试方法

搭建测试环境 创建测试模型 在开始创建测试用例前,我们需要先构建起用于测试项目依赖。 先执行下面的 artisan 命令创建一个 Post 模型及其对应迁移文件。...接下来,执行数据库迁移命令就回在数据库创建对应数据表了。 $ php artisan migrate 在创建完数据表之后,我们需要向 Post 模型类中加入如下代码 <?...单元测试 上一节我们搭建了用于测试环境。本节我们会在 Laravel 编写单元测试用例对 Post 模型进行测试。 幸运是,Laravel 同样为我们提供了创建测试用例模版文件命令工具。...测试断言会以标准 PHPUnit 输出显示在控制台。 总结 今天,我们探讨了 Laravel 内置测试组件 PHPUnit 测试用例实现方法。...此外,我们还学习了通过使用 artisan 命令行工具创建分别创建了用于单元测试和功能测试测试用例方法。

5.7K10

laravel5.5功能尝鲜

6 Request 表单验证 在 Laravel 5.5 时候,我们可以直接在 Request 对象上面直接写表单验证了,而且在没有提供 token 情况下,Laravel 5.5 错误返回也变了...factory命令生成假数据 php artisan tinker factory('App\Post',5)->create(); 9 Blade if 自定义标签 Laravel 5.5 时候针对在视图中使用很多逻辑判断推出了...10 Markdown 邮件渲染 邮件 Markdown 写法其实在 Laravel 5.4 时候就已经支持了,但是对于邮件测试来说,这样渲染结果其实不是很方便,所以在 Laravel 5.5 时候...命令 在以前 laravel 版本,我们自己创建 Artisan 命令时候需要到 Kernel 文件中注册命令才可以生效,而在 5.5 时候,Laravel 通过 load 方法实现,直接就在生成命令之后可以使用命令了...可以看到执行结果 php artisan say-hello 13 Api Resource Laravel 5.5 引入了新 API 支持:Api Resource ,这对于我们使用 Laravel

3K40
领券