如何使用ThinkPHP5.1的交互式命令行工具?

2026-06-09 16:592阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1335个文字,预计阅读时间需要6分钟。

如何使用ThinkPHP5.1的交互式命令行工具?

前言:在平时项目中,有时需要对这些业务进行批处理,例如版本兼容性检查,或不同系统间的数据同步等场景下,我们会选择自定义一些指令来定时或即时执行。但是,命令繁多,需要选择指令。

前言:

在平时项目中,有时需要对某些业务进行批处理,比如为了版本兼容,或者不同系统的数据同步等场景下,我们会选择自定义一些指令定时或即时的执行。

但是有很多命令需要读表,随着定义的指令逐渐变多,模型里本不涉及业务性的方法也越积越多,甚至某些指令删除了,但是对应的模型方法还在。所以为了不影响业务代码,我们会临时起一个项目专门作为指令处理。但还是有一个问题的是,因为还是以框架新启的项目,自然里面的那些控制器,路由,配置项加载其实并不需要。

于是我就想参考框架的 console 单独写一个指令集,当看了代码后,发现了一个我们平时很少用到的交互式输出,也就是输出带着问题。其实在很多带有控制台的软件中很常见,比如一些脚手架或包管理器安装前的询问。以下就大概介绍一些 Tp 控制台的大致运行流程和交互式输出的使用。


流程:

1. think 文件

这个就是 TP 命令执行 (php think command) 的入口文件,其实也是一个 PHP 文件。

阅读全文

本文共计1335个文字,预计阅读时间需要6分钟。

如何使用ThinkPHP5.1的交互式命令行工具?

前言:在平时项目中,有时需要对这些业务进行批处理,例如版本兼容性检查,或不同系统间的数据同步等场景下,我们会选择自定义一些指令来定时或即时执行。但是,命令繁多,需要选择指令。

前言:

在平时项目中,有时需要对某些业务进行批处理,比如为了版本兼容,或者不同系统的数据同步等场景下,我们会选择自定义一些指令定时或即时的执行。

但是有很多命令需要读表,随着定义的指令逐渐变多,模型里本不涉及业务性的方法也越积越多,甚至某些指令删除了,但是对应的模型方法还在。所以为了不影响业务代码,我们会临时起一个项目专门作为指令处理。但还是有一个问题的是,因为还是以框架新启的项目,自然里面的那些控制器,路由,配置项加载其实并不需要。

于是我就想参考框架的 console 单独写一个指令集,当看了代码后,发现了一个我们平时很少用到的交互式输出,也就是输出带着问题。其实在很多带有控制台的软件中很常见,比如一些脚手架或包管理器安装前的询问。以下就大概介绍一些 Tp 控制台的大致运行流程和交互式输出的使用。


流程:

1. think 文件

这个就是 TP 命令执行 (php think command) 的入口文件,其实也是一个 PHP 文件。

阅读全文