tekvn/php-enum 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tekvn/php-enum

最新稳定版本:1.2.0

Composer 安装命令:

composer require tekvn/php-enum

包简介

Enum utility for you.

README 文档

README

Build Status Total Downloads Latest Stable Version License

Bạn đã bao giờ phải xử lý enum trong PHP và cảm thấy mệt mỏi với sự lộn xộn và phiền toái chưa? Đừng lo lắng nữa vì PHPEnum đã sẵn sàng giúp bạn thổi bay những lo lắng!

Tôi dự định sẽ thay thế enum bằng class như các package khác nhưng tôi cho rằng performance không tốt bằng enum native nên package này đã ra đời. LOL =)))

Làm thế nào để cài đặt?

Cài đặt PHPEnum cực kỳ đơn giản, chỉ cần sử dụng Composer:

composer require tekvn/php-enum

Tại file enum của bạn, hãy use trait TekVN\Enum\EnumUtilities và... well mọi thứ đã sẵn sàng

use TekVN\Enum\EnumUtilities;

enum Status: int {
    // Thêm trait này
    use EnumUtilities;
    
    case SUSPEND = 0;
    case ACTIVE = 1;
    // ...
}

Cách sử dụng

toArray

Phương thức này trả về một mảng với key là name enum và value là value enum. Hơi rối nhỉ? Cùng xem mẫu dưới đây

Status::toArray();

// Kết quả:
[
    'SUSPEND' => 0,
    'ACTIVE' => 1
];

toJson

Phương thức toJson trả về 1 json_encode của phương thức toArray. Bạn cũng có thể truyền thêm các flag vào nếu như không muốn sử dụng các flag mặc định

Status::toJson();

// Kết quả:
'{
    "SUSPEND": 0,
    "ACTIVE": 1
}';

getValue

Phương thức cho phép lấy giá trị của enum với input có thể là string(enum name), enum. Nếu không tìm thấy enum null sẽ được trả về

Status::getValue('SUSPEND');
// Hoặc
Status::getValue(Status::SUSPEND);
// Kết quả: 0
Status::getValue('NOT_EXISTS');
// Kết quả: null

Lưu ý: Tham số thứ hai cho biết nếu null thì có throw exception hay không. Mặc định là false

Like a function

Chúng ta cũng có thể lấy 1 instance enum theo cách gọi hàm =))). Tên hàm được chuyển về dạng UPPER_CASE.

Status::suspend();
Status::active();

Dễ dàng chứ? Hãy để PHPEnum giúp bạn giải quyết mọi thách thức với enum trong PHP một cách ngầu hết sức!

Conventions

Quy tắc đặt tên case

  • Viết hoa tất cả chữ cái
  • Các chữ phân cách bởi dấu _

VD: USER_ACTIVE, USER_SUSPEND, ...

Quy tắc đặt tên hàm

Các tên hàm được đặt theo qui tắc camelCase

  • Viết thường chữ đầu
  • Các chữ phân cách nhau bằng chữ in hoa

VD: userActive, userSuspend

Đóng góp

Nếu bạn cảm thấy rằng PHPEnum có thể trở nên ngầu hơn nữa, hãy đóng góp các ý tưởng của bạn. Chúng tôi luôn chào đón.

Donate

Tôi rất vui nếu bạn donate. Đó sẽ là nguồn động lực to lớn giúp tôi có thể tạo ra những điều thú vị hơn nữa. Cảm ơn rất rất nhiều

Donate QR Mono

统计信息

  • 总下载量: 1.71k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-06-11

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固