作为程序员一定要保持良好的睡眠,才能好编程

laravel配置文件发布之publish

发布时间:2020-05-05


php artisan vendor:publish


image.png


可以看到有这么多的项目,这里根据序号进行选择,就可以实现不同的任务。



自定义实现:


1、首先定义provider 服务提供者

2、再boot方法中,增加publishes 方法

3、通过命令查看


<?php

namespace InfyOm\Generator;

use Illuminate\Support\ServiceProvider;

class InfyOmGeneratorServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap the application services.
     *
     * @return void
     */
    public function boot()
    {
        $configPath = __DIR__.'/../config/laravel_generator.php';

        $this->publishes([
            $configPath => config_path('infyom/laravel_generator.php'),
        ]);
    }

    /**
     * Register the application services.
     *
     * @return void
     */
    public function register()
    {
         
    }
}




image.png


image.png


分析就分析到底,怎么又出现了Tag ? [11-19] 这又是怎么写的呢? 我们举个例子:


看看第13项  cors


public function boot()
{
    if ($this->app instanceof LaravelApplication && $this->app->runningInConsole()) {
        $this->publishes([$this->configPath() => config_path('cors.php')], 'cors');
    } elseif ($this->app instanceof LumenApplication) {
        $this->app->configure('cors');
    }
}


publishes()


第一个参数 数组

key是原始文件所在位置

value是要发布到的目标位置


第二个参数 groups  cors



image.png