在使用tp框架的时候tp内置了一个think的命令行工具, 这个工具可以帮助我们快速的生成控制器,模型,中间件的代码。 这个工具就和laravel中的 artisan 的作用都差不多,只是名称不同而已。
tp中常用的命令行工具:
1. 快速生成应用
如果使用了多应用模式,可以快速生成一个应用,例如生成demo应用的指令如下:
php think build demo
会自动生成demo应用,自动生成的应用目录包含了controller、model和view目录以及common.php、middleware.php、event.php和provider.php等文件。生成成功后,我们可以直接访问demo应用.
2. 快速生成控制器
php think make:controller index@Blog
空控制器生成: php think make:controller index@Blog --plain
带后缀的类库: php think make:controller index@BlogController
3. 快速生成模型
php think make:model index@Blog
带后缀的类库:php think make:model index@BlogModel
快速生成服务: php think make:service index@BlogService
4. 快速生成中间件
php think make:middleware Auth
5. 创建验证器类
php think make:validate index@User
6. 创建自定义指令
php think make:command Hello hello
7. 清理缓存
php think clear
生成路由映射缓存optimize:route
php think optimize:route index
php think命令行帮助
php think
version 8.0.3
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-V, --version Display this console version
-q, --quiet Do not output any message
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Available commands:
build Build App Dirs
clear Clear runtime file
help Displays help for a command
list Lists commands
run PHP Built-in Server for ThinkPHP
version show thinkphp framework version
make
make:command Create a new command class
make:controller Create a new resource controller class
make:event Create a new event class
make:listener Create a new listener class
make:middleware Create a new middleware class
make:model Create a new model class
make:service Create a new Service class
make:subscribe Create a new subscribe class
make:validate Create a validate class
optimize
optimize:route Build app route cache.
optimize:schema Build database schema cache.
route
route:list show route list.
service
service:discover Discover Services for ThinkPHP
vendor
vendor:publish Publish any publishable assets from vendor packages