yungts97/enum-helpers

这是一个为PHP枚举提供一些辅助函数的包。

v1.0.0 2022-12-03 15:23 UTC

This package is auto-updated.

Last update: 2024-09-07 12:40:59 UTC


README

yungts97/enum-helpers 是一个扩展PHP枚举功能的PHP包。

📦 环境要求

PHP: ^8.1

🚀 安装

您可以通过composer安装此包

composer require yungts97/enum-helpers

✨ 如何使用?

此包非常简单且易于使用。要扩展枚举的功能,您可以在枚举中添加特性。

use Yungts97\EnumHelpers\Traits\Invokable;
use Yungts97\EnumHelpers\Traits\Contains;
use Yungts97\EnumHelpers\Traits\Random;

enum Status: string
{
    use Invokable, Contains, Random; // add it here

    case Draft = 'draft';
    case Submitted = 'submitted';
    case Pending = 'pending';
    case Approved = 'approved';
    case Rejected = 'rejected';
}

1. 可调用

此特性允许枚举可调用。

Status::Pending() // "pending"

2. 包含

此特性允许检查值是否存在于枚举中。接受 UnitEnumBackedEnumStringInt 作为参数。

Status::contains('pending') // true 
Status::contains(Status::Draft) // true
Status::contains(Status::Refund) // false 

3. 随机

此特性允许枚举返回随机值。

Status::random() // Status::Draft 
Status::random(1) // Status::Draft
Status::random(2) // [Status::Draft, Status::Approved]

📃 许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。