Laravel 自定命令以及生成文件的例子

以创建service层为例子

1、执行命令

php artisan make:command ServiceMakeCommand

2、在app\Console\Commands 下就会多出一个 ServiceMakeCommand.php 文件 ,更改其内容为一下内容 ( 注意:

1、承了GeneratorCommand类,

2、protected $signature = 'make:service {name}'; 中{name}必须要有

<?php

namespace App\Console\Commands;

use Illuminate\Console\GeneratorCommand;

class ServiceMakeCommand extends GeneratorCommand
{
 /**
 * The name and signature of the console command.
 *
 * @var string
 */
 protected $signature = 'make:service {name}';

 /**
 * The console command description.
 *
 * @var string
 */
 protected $description = 'Create a service';
 /**
 * Get the stub file for the generator.
 *
 * @return string
 */
 protected function getStub()
 {
 return __DIR__.'/stubs/service.stub';
 }

 /**
 * Get the default namespace for the class.
 *
 * @param string $rootNamespace
 * @return string
 */
 protected function getDefaultNamespace($rootNamespace)
 {
 return $rootNamespace.'\Services';
 }
}

3、创建模版

在 app\Console\Commands\ 下创建stubs文件夹 ,并创建文件service.stub,其内容为

<?php

namespace DummyNamespace;

class DummyClass
{
 public function __construct()
 {
 parent::__construct();
 }
}

4、现在就已经完成了,运行 php artisan list,就可以看到

D2D8E142-A158-3997-52E9-98C89DFFD48E.jpeg

执行 php artisan make:service BaseService 就有BaseService.php 文件了

C28E82F0-E015-00D7-E87B-61D13CEF45E3.jpeg

收藏 (0)
评论列表
正在载入评论列表...
我是有底线的