How to Get Values of All Backed Enum Cases as an Array in PHP?

Get backed enum values as array in PHP

You can get an array of all values of a backed enum in PHP, in the following way:

  1. Call the static cases() method on the backed enum to get an array of all defined cases (in the order of declaration);
  2. Use array_column() on the resulting array of enums, and specify the value (public) property as the column key.

For example:

// PHP 8.1+
enum MyEnum: string
    case Foo = 'foo';
    case Bar = 'bar';
    case Baz = 'baz';

$enumsArr = MyEnum::cases();
$values = array_column($enumsArr, 'value');

var_dump($values); // ['foo', 'bar', 'baz']

Hope you found this post useful. It was published . Please show your love and support by sharing this post.