Trình trợ giúp Enum cho PHP

PHP hiện hỗ trợ liệt kê gốc với việc phát hành phiên bản 8. Mục tiêu của gói trình soạn thảo archtechx/enums là cải thiện khả năng làm việc với enums bằng cách tăng cường các tính năng gốc

Bạn có thể thêm các tiện ích sau vào Enums của mình trong bất kỳ dự án PHP nào bằng cách sử dụng các đặc điểm thư viện này

  • Các trường hợp có thể được gọi để lấy giá trị của Enum được hỗ trợ
  • tên. Trả về danh sách tên trường hợp của enum
  • giá trị. Cung cấp một mảng các giá trị trường hợp của enum
  • Trả về một mảng kết hợp của tên trường hợp và giá trị cho các tùy chọn

Dưới đây là một số hình minh họa từ tệp readme của gói dựa trên các tính năng đã nói ở trên

Đây là cách _14 đặc điểm hoạt động đầu tiên

_10

Đây là cách lấy tên trường hợp từ enums tiếp theo

________Đầu tiên

Đặc điểm _15 có một mảng trả về bao gồm các giá trị enum tiềm năng

1use ArchTech\Enums\Values;
2 
3enum TaskStatus: int
4{
5 use Values;
6 
7 case INCOMPLETE = 0;
8 case COMPLETED = 1;
9 case CANCELED = 2;
10}
11 
12TaskStatus::values(); // [0, 1, 2]

Đặc điểm _16 cuối cùng xuất ra một mảng tên và giá trị kết hợp

1use ArchTech\Enums\Options;
2 
3enum TaskStatus: int
4{
5 use Options;
6 
7 case INCOMPLETE = 0;
8 case COMPLETED = 1;
9 case CANCELED = 2;
10}
11 
12TaskStatus::options();
13// ['INCOMPLETE' => 0, 'COMPLETED' => 1, 'CANCELED' => 2]

Trên GitHub, bạn có thể xem mã nguồn, nhận hướng dẫn cài đặt chi tiết và tìm hiểu thêm về gói này

Phát hành PHP 8. 1 mang lại kiểu liệt kê riêng cho PHP. Gói trình soạn thảo archtechx/enums được xây dựng dựa trên các tính năng gốc và nhằm mục đích làm việc với enums trở nên đáng yêu hơn

Sử dụng các đặc điểm thư viện này, bạn có thể thêm các tiện ích sau vào Enums của mình trong bất kỳ dự án PHP nào

  • Invokable cases - lấy giá trị của một Enum được hỗ trợ bằng cách gọi nó
  • Tên - trả về danh sách tên trường hợp trong enum
  • Giá trị - trả về danh sách các giá trị trường hợp trong enum
  • Tùy chọn - trả về một mảng kết hợp gồm các tên và giá trị trường hợp

Với các tính năng trên, đây là một số ví dụ từ tệp readme của gói

Đầu tiên, đây là cách hoạt động của đặc điểm InvokableCases

1// Invokable

2use ArchTech\Enums\InvokableCases;

3 

4enum TaskStatus: int

5{

6 use InvokableCases;

7 

8 case INCOMPLETE = 0;

9 case COMPLETED = 1;

10 case CANCELED = 2;

11}

12 

13TaskStatus::INCOMPLETE(); // 0

14TaskStatus::COMPLETED(); // 1

15TaskStatus::CANCELED(); // 2

Tiếp theo, đây là cách lấy tên trường hợp từ enums

1use ArchTech\Enums\Names;

2 

3enum TaskStatus: int

4{

5 use Names;

6 

7 case INCOMPLETE = 0;

8 case COMPLETED = 1;

9 case CANCELED = 2;

10}

11 

12TaskStatus::names();

13// ['INCOMPLETE', 'COMPLETED', 'CANCELED']

Đặc điểm Values có thể trả về một mảng các giá trị enum có thể

1use ArchTech\Enums\Values;

2 

3enum TaskStatus: int

4{

5 use Values;

6 

7 case INCOMPLETE = 0;

8 case COMPLETED = 1;

9 case CANCELED = 2;

10}

11 

12TaskStatus::values(); // [0, 1, 2]

Cuối cùng, đặc điểm Options trả về một mảng tên và giá trị kết hợp

1use ArchTech\Enums\Options;

2 

3enum TaskStatus: int

4{

5 use Options;

6 

7 case INCOMPLETE = 0;

8 case COMPLETED = 1;

9 case CANCELED = 2;

10}

11 

12TaskStatus::options();

13// ['INCOMPLETE' => 0, 'COMPLETED' => 1, 'CANCELED' => 2]

Bạn có thể tìm hiểu thêm về gói này, nhận hướng dẫn cài đặt đầy đủ và xem mã nguồn trên GitHub

PHP có hỗ trợ enum không?

Trong PHP, Enums là một loại đối tượng đặc biệt . Bản thân Enum là một lớp và các trường hợp có thể xảy ra của nó là tất cả các đối tượng đơn lẻ của lớp đó. Điều đó có nghĩa là các trường hợp Enum là các đối tượng hợp lệ và có thể được sử dụng ở bất kỳ đâu mà một đối tượng có thể được sử dụng, bao gồm cả kiểm tra loại.

Mảng liệt kê trong PHP là gì?

Liệt kê (hoặc enum) chủ yếu được sử dụng để gán tên cho các hằng tích phân , tên giúp chương trình dễ đọc và dễ bảo trì. Trong PHP, các kiểu dữ liệu liệt kê có thể được triển khai bằng cách sử dụng và mở rộng các lớp trừu tượng. Cách tiếp cận 1. Sử dụng lớp trừu tượng đơn giản để đóng gói thành viên dữ liệu.

Khi nào enums được thêm vào PHP?

Từ PHP 8. 1 , bạn có thể sử dụng kiểu liệt kê gốc.

ấu trùng enum là gì?

Laravel Enum là gói của Ben Sampson bổ sung hỗ trợ tạo enum trong PHP và bao gồm trình tạo cho Laravel . Đây là một ví dụ về giao diện của một lớp Enum khi sử dụng gói này. 3không gian tên ứng dụng\Enums; .