| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 | 
							- <?php
 
- // +----------------------------------------------------------------------
 
- // | ThinkPHP [ WE CAN DO IT JUST THINK ]
 
- // +----------------------------------------------------------------------
 
- // | Copyright (c) 2016 http://thinkphp.cn All rights reserved.
 
- // +----------------------------------------------------------------------
 
- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
 
- // +----------------------------------------------------------------------
 
- // | Author: 刘志淳 <chun@engineer.com>
 
- // +----------------------------------------------------------------------
 
- namespace think\console\command\make;
 
- use think\console\command\Make;
 
- use think\console\input\Argument;
 
- use think\facade\App;
 
- class Command extends Make
 
- {
 
-     protected $type = "Command";
 
-     protected function configure()
 
-     {
 
-         parent::configure();
 
-         $this->setName('make:command')
 
-             ->addArgument('commandName', Argument::OPTIONAL, "The name of the command")
 
-             ->setDescription('Create a new command class');
 
-     }
 
-     protected function buildClass($name)
 
-     {
 
-         $commandName = $this->input->getArgument('commandName') ?: strtolower(basename($name));
 
-         $namespace   = trim(implode('\\', array_slice(explode('\\', $name), 0, -1)), '\\');
 
-         $class = str_replace($namespace . '\\', '', $name);
 
-         $stub  = file_get_contents($this->getStub());
 
-         return str_replace(['{%commandName%}', '{%className%}', '{%namespace%}', '{%app_namespace%}'], [
 
-             $commandName,
 
-             $class,
 
-             $namespace,
 
-             App::getNamespace(),
 
-         ], $stub);
 
-     }
 
-     protected function getStub()
 
-     {
 
-         return __DIR__ . DIRECTORY_SEPARATOR . 'stubs' . DIRECTORY_SEPARATOR . 'command.stub';
 
-     }
 
-     protected function getNamespace($appNamespace, $module)
 
-     {
 
-         return $appNamespace . '\\command';
 
-     }
 
- }
 
 
  |