Laravel Artisan(工匠) 命令使用技巧

简介: Laravel Artisan(工匠) 命令使用技巧

Artisan 命令


学会用 Artisan 调试项目


Artisan 意为 工匠 手艺人,是非常好用的开发利器。

我们在开发过程中经常要进行各种测试,通过postman请求接口测试是一种思路,但是比较耗时。

我们可以使用 artisan 命令创建测试工具文件


php artisan make:command TestPhp


执行上述命令后会在项目中自动生成下述文件(非核心代码已用三个竖着的.省略), 我们可以在 handle() 方法中


<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
class TestPhp extends Command
{
    //改成自己的名字
    protected $signature = 'TestPhp:Tool';
    .
    .
    .
    public function handle()
    {
        //在这里写需要测试的代码
    }
}


我们通过下述命令就可以很方便的测试了


php artisan TestPhp:Tool


在代码中使用 Artisan


我们不仅可以在命令行中启动 Artisan 命令,还可以携带参数地在代码中启动它,使用 Artisan::call() 方法即可:


Route::get('/foo', function () {
    $exitCode = Artisan::call('sms:send', [
        'user' => 1, '--queue' => 'default'
    ]);
    //
});


Artisan 命令参数


创建 Artisan 命令时,我们可以用以下方式询问输入:$this-> confirm() (确认),$this-> anticipate() (预期输入),$this->choice() (选择)。


// 输入是或者否
if ($this->confirm('你要继续执行吗?')) {
    //
}
// 带有自动填充的开放问题
$name = $this->anticipate('你是谁?', ['小明', '小华']);
// 带有默认选中项的选项列表
$name = $this->choice('你是谁?', ['小明', '小华'], $defaultIndex);


维护模式


如果我们想要在网站上启用维护模式,执行下面的 Artisan 命令:


php artisan down


然后人们会看到默认的 503 页面。

在 Laravel 8 里,我们还可以提供下述标识:


用户将会重定向的路径地址 预渲染的维护模式视图页面 绕过维护模式的秘钥 维护模式返回的状态吗 每 X 秒重新加载页面


php artisan down --redirect="/" --render="errors::503" --secret="xxxxxxx-xxx-xxx-xxx-xxxxxxxxx" --status=200 --retry=60


在 Laravel 8 之前有:

维护模式显示的消息 每 X 秒重新加载页面 允许访问的 IP 地址


php artisan down --message="系统更新中,请稍后访问" --retry=60 --allow=127.0.0.1


当我们完成了维护工作,只需要运行下述命令,网站就可以正常访问了。


php artisan up


Artisan 命令行帮助


要查看 Artisan 命令的相关选项,可以运行 Artisan 命令带上 --help 标识参数,比如 php artisan make:model --help

然后我们就可以看到提示了:


Options:
  -a, --all             为模型生成迁移类,填充类,工厂类和资源类
  -c, --controller      为模型创建一个新的控制器
  -f, --factory         为模型创建一个新的工厂类
      --force           当模型已存在的时候强制创建类
  -m, --migration       为模型创建一个新的迁移类
  -s, --seed            为模型创建一个新的填充文件
  -p, --pivot           用来标识生成的模型是否是自定义中间表模型
  -r, --resource        用来标识生成的控制器是否是资源控制器
      --api             用来标识生成的控制器是否是API控制器
  -h, --help            显示帮助信息
  -q, --quiet           不输出任何信息
  -V, --version         显示应用版本
      --ansi            使用ANSI输出
      --no-ansi         禁用ANSI输出
  -n, --no-interaction  不询问任何交互式问题
      --env[=ENV]       该命令运行的配置环境
  -v|vv|vvv, --verbose  显示更详细的消息,-v表示正常输出,-vv表示更详细的输出,-vvv表示增加显示调试信息


查看 Laravel 的版本


通过以下命令行,可以查看并确认我们的应用所使用 Lavavel 版本


php artisan --version


相关文章
|
数据安全/隐私保护
基于SpringBoot+Vue+Java+Mysql 的简历招聘系统【源码】下
基于SpringBoot+Vue+Java+Mysql 的简历招聘系统【源码】
|
7月前
|
监控 数据库连接 PHP
利用Laravel-Admin从头撸一个CRM
本教程聚焦于使用Laravel 5.6+和Laravel-Admin构建CRM系统。你将学习CRM基础、模块及权限管理。核心模块包括联系人(潜在客户、机会、客户和关闭阶段)、任务、文档、邮件/消息、用户、角色&权限和日历。准备工作涉及创建新的Laravel项目,安装Laravel-Admin,配置数据库并运行安装命令。后续章节将介绍数据库设计和模型创建。
|
7月前
|
JavaScript Java 关系型数据库
基于 java + Springboot + vue +mysql 大学生实习管理系统(含源码)
本文档介绍了基于Springboot的实习管理系统的设计与实现。系统采用B/S架构,旨在解决实习管理中的人工管理问题,提高效率。系统特点包括对用户输入的验证和数据安全性保障。功能涵盖首页、个人中心、班级管理、学生管理、教师管理、实习单位管理、实习作业管理、教师评分管理、单位成绩管理和系统管理等。用户分为管理员、教师和学生,各自有不同的操作权限。
|
存储 小程序 NoSQL
laravel5.8(九)session基本使用
Session这个玩意还是挺重要的。 Laravel对于session的支持还是很完全的。 一:文件位置 Session 配置文件位于 config/session.php。 默认情况下,Laravel 使用的 Session 驱动为 file 驱动,这对许多应用而言是没有什么问题的。 在生产环境中,你可能考虑使用 memcached 或者 redis 驱动以便获取更佳的 Session 性能,尤其是线上同一个应用部署到多台机器的时候,这是最佳实践。 1. 复制代码 Session 驱动用于定义请求的 Session 数据存放在哪里,Laravel 可以处理多种类型的驱动: 1. bash
79 0
|
XML 存储 Java
[JavaWeb]——面试官:谈谈你对springboot配置文件的理解
[JavaWeb]——面试官:谈谈你对springboot配置文件的理解
|
存储 Java 测试技术
学校热点新闻推送系统 毕业设计 JAVA+Vue+SpringBoot+MySQL(一)
学校热点新闻推送系统 毕业设计 JAVA+Vue+SpringBoot+MySQL
167 0
学校热点新闻推送系统 毕业设计 JAVA+Vue+SpringBoot+MySQL(二)
学校热点新闻推送系统 毕业设计 JAVA+Vue+SpringBoot+MySQL
|
PHP 开发工具 数据库
laravel系列(二) Dcat admin框架开发工具使用
laravel系列(二) Dcat admin框架开发工具使用
351 0
|
存储 安全 Java
基于SpringBoot+Vue+Java+Mysql 的简历招聘系统【源码】上
基于SpringBoot+Vue+Java+Mysql 的简历招聘系统【源码】
|
数据库
基于SpringBoot+Vue+Java+Mysql 的简历招聘系统【源码】中
基于SpringBoot+Vue+Java+Mysql 的简历招聘系统【源码】