Новости PHP 8: типы объединения и смешанные типы Перевод

Adre Adre 5 Февраля (ред)

До версии PHP 8, объявление типа было ограничено одним типом или допускалось только для принятия значения null (с использованием ? оператора). С помощью Union Types теперь можно указать, что переменная может иметь один из нескольких различных типов .

Основной синтаксис объявления типов объединения предполагает использование вертикальной черты (|) между нужными типами. Вот простой пример:

function sum(int|float $number): int|float {
    // ...
}

В этом примере sum функция принимает параметр $number, который может иметь тип int или float, и функция может возвращать значение типа int или float.

Типы объединения полезны при работе со значениями, допускающими значение NULL. До этого PHP 8 вы использовали бы ?Type, чтобы указать, что переменная может иметь тип Type или null. Теперь, с помощью типов объединения, вы можете Type|null более явно выразить ту же идею.

function sum(?int $value): int|null {
    // ...
}

Объединение типов , улучшающее читаемость кода, упрощающее обслуживание и повышающее надежность проверки типов. Это особенно полезно в крупных проектах или ситуациях, когда четкость и точность шрифтов имеют решающее значение.

Смешанные типы

Тип mixed — это динамический и гибкий способ обработки переменных, типы которых могут меняться во время выполнения скрипта. По сути, это позволяет переменной хранить значения любого типа без наложения строгих ограничений типа.

function processValue(mixed $data): mixed {
    // Code to process $data
}

В этом примере функция processValue принимает параметр $data типа mixed и может возвращать значение любого типа (mixed).

https://dev.to/xxzeroxx/php-8-news-union-types-and-mixed-types-l0h

PHP

2 Ответа

  1. Evg Evg 5 Февраля (ред.)

    Как раз в тему, php начал дальше изучать. crazy