thinkphp8 定时任务 addArgument

在ThinkPHP8中,我们可以使用addArgument方法来添加命令行参数。这个方法允许我们定义命令行参数,并且可以指定参数的模式(例如:是否必须,是否可选)。

以下是一个简单的例子,演示如何在ThinkPHP8的命令行中添加一个参数:

<?php
namespace app\command;use think\console\Command;
use think\console\Input;
use think\console\input\Argument;
use think\console\input\Option;
use think\console\Output;class Hello extends Command
{protected function configure(){$this->setName('hello')->addArgument('name', Argument::OPTIONAL, "your name")->addOption('city', null, Option::VALUE_REQUIRED, 'city name')->setDescription('Say Hello');}protected function execute(Input $input, Output $output){$name = trim($input->getArgument('name'));$name = $name ?: 'thinkphp';if ($input->hasOption('city')) {$city = PHP_EOL . 'From ' . $input->getOption('city');} else {$city = '';}$output->writeln("Hello," . $name . '!' . $city);}
}

这个文件定义了一个叫hello的命令,并设置了一个name参数和一个city选项。

// 无需任何参数
php think hello
// 输出默认: Hello thinkphp!// 添加命令参数
php think hello kancloud
// 输出: Hello kancloud!// 添加city选项
php think hello kancloud --city shanghai
// 输出: Hello kancloud!From shanghai

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/50910.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Golang | Leetcode Golang题解之第338题比特位计数

题目&#xff1a; 题解&#xff1a; func countBits(n int) []int {bits : make([]int, n1)for i : 1; i < n; i {bits[i] bits[i&(i-1)] 1}return bits }

Excel数字中间指定位置插入符号——以120120加*为例

设置单元格格式——自定义 更多阅读Excel数字中间指定位置插入符号_哔哩哔哩_bilibili

【Linux】2.Linux常见指令以及权限理解(1)

文章目录 1.Xshell的一些快捷键操作2.Linux指令2.1常用指令示例2.2常用指令选项2.2.1 ls指令2.2.2 cd/pwd/shoami指令2.2.3 touch指令2.2.4 mkdir指令2.2.5 rmdir指令2.2.6 rm指令 1.Xshell的一些快捷键操作 Xshell&#xff1a; altenter&#xff1a;Xshell自动全屏&#xff0c…

计算机Java项目|基于SpringBoot的精简博客系统的设计与实现

作者主页&#xff1a;编程指南针 作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验&#xff0c;被多个学校常年聘为校外企业导师&#xff0c;指导学生毕业设计并参…

【目标检测】CFINet:通过由粗到精的区域提议网络和模仿学习进行小目标检测

《Small Object Detection via Coarse-to-fine Proposal Generation and Imitation Learning》 通过由粗到精的区域提议网络和模仿学习进行小目标检测 期刊&#xff1a;ICCV 2023 原文&#xff1a;https://arxiv.org/abs/2308.09534 源码&#xff1a;https://github.com/shauny…

Node.js 实现一个 HTTP/2 的例子

要在前端使用 HTTP/2&#xff0c;通常不需要在 JavaScript 代码中做特殊处理&#xff0c;因为 HTTP/2 是在网络传输层处理的&#xff0c;浏览器会自动处理请求的协议选择。然而&#xff0c;可以通过设置一个简单的项目&#xff0c;使用 HTTP/2 来加载资源&#xff0c;并通过浏览…

Linux之HTTP服务器的构建

欢迎诸位来阅读在下的博文~ 在这里&#xff0c;在下会不定期发表一些浅薄的知识和经验&#xff0c;望诸位能与在下多多交流&#xff0c;共同努力! 江山如画&#xff0c;客心如若&#xff0c;欢迎到访&#xff0c;一展风采 文章目录 参考环境参考书籍一、HTTP的工作原理1. 建立连…

Windows 11上RTX 4090深度学习与大模型微调环境安装指南

【本文原作者&#xff1a;擎创科技资深产品专家 布博士】 在安装深度学习及大模型微调环境时&#xff0c;经历了多次反复操作&#xff08;如CUDA、cuDNN、PyTorch的安装与卸载&#xff09;。为了避免走弯路&#xff0c;总结了以下步骤&#xff1a; 步骤 1&#xff1a;显卡驱动…

11-sentinel利用nacos作持久化

本文介绍sentinel配置数据的持久化方法。由于sentinel官方并没有提供持久化功能&#xff0c;大家在测试过程中也能发现sentinel服务重启后&#xff0c;原来配置的数据就丢了&#xff0c;本文就是来处理这一问题的。 做好心理准备&#xff0c;我们要修改sentinel的源代码&#…

Qt消息对话框的实现

Widget.cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);this -> setWindowIcon(QIcon(":/picture/hp.jpg"));//设置窗口图标this -> setW…

Leetcode JAVA刷刷站(57)插入区间

一、题目概述 二、思路方向 为了解决这个问题&#xff0c;我们可以遍历给定的区间列表 intervals&#xff0c;并同时构建一个新的列表来存储最终的合并结果。遍历过程中&#xff0c;我们检查当前区间是否与 newInterval 重叠或相邻&#xff0c;并根据需要进行合并。如果不重叠…

2024新生训练营 8.20 做题活动

A 输出题罢了不讲直接看代码 #inlclude<stdio.h> int main() {printf("Eclipse First&#xff0c;the Rest Nowhere.");return 0; }B 首先要知道的是凡是大于1的整数要么是质数要么是合数&#xff0c;而1既不是质数也不是合数&#xff0c;题目问从0到n所有质数…

高级java每日一道面试题-2024年8月16日-设计模式篇-解释装饰者模式和代理模式的区别?

如果有遗漏,评论区告诉我进行补充 面试官: 解释装饰者模式和代理模式的区别&#xff1f; 我回答: 在Java中&#xff0c;装饰者模式&#xff08;Decorator Pattern&#xff09;和代理模式&#xff08;Proxy Pattern&#xff09;都是常用的设计模式&#xff0c;它们在结构上看…

微信小程序--30(网络数据请求)

1.小程序中网络数据请求的限制 只能请求HTTPS类型的接口必须将接口的域名添加到信任列表中 2.配置request合法域名 需求描述 希望请求某个域名下的接口 步骤 登录小程序管理后台→开发→开发设置→服务器域名→修改request合法域名 练习 注意事项 域…

TensorFlow和它的弟弟们

TensorFlow、TensorFlow Lite、TensorFlow Lite Micro是Google在深度学习领域推出的三个不同产品&#xff0c;它们各自有着不同的设计目标和适用场景。以下是它们之间的主要区别&#xff1a; 1. TensorFlow (PC\GPU) 设计目标&#xff1a;TensorFlow是一个开源的机器学习框架…

常见的GPU性能对比

写这篇博客的目的就是想搞清楚英伟达不同显卡之间的性能差异以及移动端GPU的性能达到了英伟达显卡的哪一代&#xff0c;让自己也让大家明白不同显卡的算力差异。所有的数据均从网络搜索&#xff0c;有不正确的地方欢迎批评指正。同一显卡会有一个首次发布&#xff0c;此外还有一…

系统架构:分而治之

系统架构&#xff1a;分而治之 引言“分而治之”在架构中的应用模块化设计分层化架构微服务架构 分而治之的优势降低复杂性提高灵活性和可扩展性增强可维护性促进团队协作 分而治之的劣势复杂性转移性能开销开发和运维的复杂性数据一致性挑战 结论 引言 “分而治之”是一种分析…

wo是如何克服编程学习中的挫折感的?

你是如何克服编程学习中的挫折感的&#xff1f; 编程学习之路上&#xff0c;挫折感就像一道道难以逾越的高墙&#xff0c;让许多人望而却步。然而&#xff0c;真正的编程高手都曾在这条路上跌倒过、迷茫过&#xff0c;却最终找到了突破的方法。你是如何在Bug的迷宫中找到出口的…

5.1、生成树协议stp

一、广播风暴 广播风暴&#xff08;Broadcast Storm&#xff09;是网络中的一种现象&#xff0c;通常发生在局域网&#xff08;LAN&#xff09;中。当网络中的交换机或路由器配置错误&#xff0c;或环路没有被有效控制时&#xff0c;广播帧会在网络中无限制地传播&#xff0c;…

QT基础知识4

思维导图 项目文件里面要加texttospeech模块 widget.h: #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTime>//时间类 #include <QTextToSpeech>//语音播报类QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass…