digitalion/laravel-makes

Artisan的额外类创建命令集合

1.0.14 2023-09-23 13:45 UTC

This package is auto-updated.

Last update: 2024-09-23 15:56:21 UTC


README

Packagist License Packagist Packagist Release Packagist Downloads Packagist Stars

Artisan的额外类创建命令集合

它做什么

此包扩展了用于创建类的Artisan基本命令。

基本模板

要自定义Laravel类的生成,请阅读Laravel 文档

安装

使用composer要求此包。建议仅在开发中要求此包。

composer require digitalion/laravel-makes

Laravel使用包自动发现,因此不需要手动添加ServiceProvider。

使用

安装包后,您将拥有额外的Artisan命令

make:class

App\Classes\中创建一个新的通用类

php artisan make:class DigitalionClass

make:enum

App\Enums\中创建一个新的枚举类

php artisan make:enum DigitalionEnum

枚举实现了Digitalion\LaravelMakes\Traits\EnumSerializableTrait特质,该特质添加了用于枚举的有用方法。查看枚举方法

make:helper

App\Helpers\中创建一个新的辅助类

php artisan make:helper DigitalionHelper

make:interface

App\Interfaces\中创建一个新的查询作用域类

php artisan make:interface DigitalionInterface

make:scope

App\Scopes\中创建一个新的查询作用域类

php artisan make:scope DigitalionScope

make:service

App\Services\中创建一个新的查询作用域类

php artisan make:service DigitalionService

make:trait

App\Traits\中创建一个新的特质类

php artisan make:trait DigitalionTrait

枚举方法

获取数组选项

$options = DigitalionEnum::options();

// dump $options
[
	'key1'	=> 'value1',
	'key2'	=> 'value2',
	'key3'	=> 'value3',
]

获取数组值

$values = DigitalionEnum::values();

// dump $values
[
	'value1',
	'value2',
	'value3',
]

获取数组键

$keys = DigitalionEnum::keys();

// dump $keys
[
	'key1',
	'key2',
	'key3',
]

获取字符串值

此方法返回一个由逗号分隔的所有枚举值的字符串。如果您在Laravel的验证规则中(如in:)使用它,可能会发现它很有用。

$valuesString = DigitalionEnum::valuesImplode();

// dump $valuesString
'value1,value2,value3'

获取正则表达式值

此方法返回一个用于验证枚举值的正则表达式的字符串。您可以在路由中使用它来仅接受其值作为参数(Laravel 文档 - 正则表达式约束)。

$valuesRegex = DigitalionEnum::valuesRegex();

// dump $valuesRegex
'(value1|value2|value3)$'

获取翻译后的数组

通过传递枚举值的翻译键前缀,您将获得包含所有翻译键和值的数组。

文件:resources/lang/en/enums.php

return [
    'digitalion' => [
        'key1' => 'Value 1',
        'key2' => 'Value 2',
        'key3' => 'Value 3',
    ],
];

使用

$trans = DigitalionEnum::trans('enums.digitalion');

// dump $trans
[
	'key1'	=> 'Value 1',
	'key2'	=> 'Value 2',
	'key3'	=> 'Value 3',
]

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件