sammycorgi / laravel-batch-file-creator
用于在Windows机器上更容易地进行Laravel开发的批量文件创建的有用Artisan命令
Requires
- laravel/framework: >=5.7
This package is auto-updated.
Last update: 2023-02-16 09:38:13 UTC
README
此仓库已被存档,因为现在有更好的工具可用。
Laravel Batch File Creator
添加了一些Artisan命令以生成批处理文件,这样您就不必每次在Windows机器上开始开发时打开多个终端。
安装
安装包: composer require sammycorgi/laravel-batch-file-installer
Laravel应该会自动发现该包。如果不行,请运行 php artisan package:discover
使用
默认情况下,运行 php artisan batch-make:all
以创建新的Laravel安装的默认批处理文件。这将创建以下命令的批处理文件:
使用 --defaults
标志运行此命令以跳过问题,并直接根据配置中定义的默认选项生成脚本。
php artisan serve
php artisan queue:work
php artisan schedule:run
npm run watch
- 确保已安装npm,否则此命令将无法工作!cd [project-path]
- 打开到项目路径的终端
脚本将要求某些选项,例如 php.exe
路径和队列工作者选项。
配置
要更改这些默认值,首先通过运行 php artisan vendor:publish --tag=config --provider=Sammycorgi\LaravelBatchFileCreator\ServiceProvider
发布配置包
这将创建一个位于 config/batch.php
的配置文件
显著的配置条目
folder_path
- 批处理文件将被写入的文件夹。默认为 base_path('batch')
php.exe_path
- php可执行文件的位置。默认为 C:\xampp\php\php.exe
to_write
- 由 batch-make:all
命令创建的批处理文件。请确保这些文件的顺序正确!
编写新的批处理文件创建器
创建一个新的类,该类扩展了 Sammycorgi\LaravelBatchFileCreator\Commands\BaseBatchWriter
。请确保实现 getContents()
和 getCommandName()
方法!
如果命令有任何参数,请创建一个扩展 Sammycorgi\LaravelBatchFileCreator\Commands\Options\Definitions\Definition
的选项定义类并实现 getDefinitions()
方法。这将返回一个数组,其中包含数组 - 一个数组对应一个选项。选项的 name
是必需的。您还可以定义选项的 default
和 description
。
请确保在配置中的 definitions
数组中添加一个条目以将此定义映射到命令。语法是 [creator_class_name] => [definition_class_name (或 null 如果没有选项)]
getContents()
将是写入批处理文件的文件内容。
基类有一个appendContents()
方法,该方法将选项及其值输出到脚本中。
每个 artisan 命令都必须定义的handle()
方法在基类中定义。默认情况下,它将内容写入批处理文件并输出成功消息。
如果脚本需要访问 php 可执行文件,请使用Sammycorgi\LaravelBatchFileCreator\Commands\Traits\GetsPhpExecutableInformation
特质并实现Sammycorgi\LaravelBatchFileCreator\Commands\Contracts\IUsesPhpExecutable
接口。调用$this->getPhpExecutablePath()
以获取定义的 php 可执行文件路径