sammycorgi/laravel-batch-file-creator

此包已被弃用且不再维护。未建议替代包。

用于在Windows机器上更容易地进行Laravel开发的批量文件创建的有用Artisan命令

dev-master 2023-01-16 09:26 UTC

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 是必需的。您还可以定义选项的 defaultdescription

请确保在配置中的 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 可执行文件路径