TGViewer
msavin | Backend & PHP msavin | Backend & PHP @msavin_php · 794 subscribers
Post #47 1.33K
Пока идет обсуждение моего RFC в пыху, узнал, что array_column может доставать не только колонки массива, как казалось бы, но и свойства объектов:


enum Status: string {
case Active = 'active';
case Inactive = 'inactive';
case Pending = 'pending';
}

// What does self::cases() return?
var_dump(Status::cases());
// array(3) {
// [0]=> enum(Status::Active) // <- These are OBJECTS
// [1]=> enum(Status::Inactive) // <- Not arrays
// [2]=> enum(Status::Pending)
// }

// Each case object has public readonly properties:
$case = Status::Active;
echo $case->value; // "active" (string - the backing value)

// array_column can extract these properties!
$values = array_column(Status::cases(), 'value');
var_dump($values);
// array(3) {
// [0]=> string(6) "active"
// [1]=> string(8) "inactive"
// [2]=> string(7) "pending"
// }


А вы знали про такое?
  • 👍 23
  • 💯 4
More from @msavin_php
  1. Jul 3, 2026Я писал кучу всяких библиотек и утилит, но только одна "стрельнула" и на днях пробила 100к…
  2. Jun 8, 2026Выложил видос, где разбираю чужой тех на предмет ошибок, а не прохожу собес самолично. Как…
  3. Apr 8, 2026Неочевидное поведение variadic + named arguments Вот люблю пхп и ненавижу одновременно - п…
  4. Apr 7, 2026Новое видео про распределенные транзакции, saga pattern, tcc, 2pc, eventual & strong consi…
  5. Mar 27, 2026Зарелизил наконец-то ролик про кэш в сисдизе Если упустил что-то важное, дайте знать 🙂
  6. Feb 13, 2026Есть относительно популярный вопрос на собесах - про множественное наследование в пхп Тут…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →