<?php namespace app\command; use think\console\Input; use think\console\Output; use think\facade\Log; /** * 命令行基类,提供基本功能,继承的子类重写main方法即可 * Class Base * @package app\command */ class Base extends \think\console\Command { protected $input; //输入变量 protected $output;//输出引用 /** * 输出方法 * @param $obj * @param string $type */ protected function writeln($obj,$type="info"){ $msg=print_r($obj,true); Log::record($msg,$type); $this->output->writeln("[".$type."]".$msg); } /** * 命令行核心方法,不要重写 * @param Input $input * @param Output $output * @return int|void|null */ protected function execute(Input $input, Output $output) { $this->input=$input; $this->output=$output; $this->main(); } /** * 命令行主程序,继承后重写此方法,将业务写在此方法中 */ protected function main(){ } }