PHP 8.1 выпущен на свободу: используйте «никогда не возвращаемый тип» и усовершенствуйте свой код

  1. Основы: что такое «Никогда не возвращаемый тип»?
    Прежде чем мы перейдем к коду, давайте быстро объясним, что такое «Никогда не возвращаемый тип». В PHP 8.1 этот новый тип возврата был введен, чтобы указать, что функция или метод никогда не возвращает результат ни при каких обстоятельствах. Это похоже на перегруженную пустоту на стероидах!

  2. Когда использовать тип «Никогда не возвращаемый»
    Тип «Никогда не возвращаемый» пригодится, когда у вас есть код, который никогда не должен достигать конца функции или метода. Он идеально подходит для ситуаций, когда вы хотите явно указать, что исключение всегда будет генерироваться или что программа завершится до достижения оператора возврата.

  3. Пример кода: создание исключения
    Давайте начнем с простого примера кода. Представьте, что у вас есть функция, которая всегда должна генерировать исключение. В PHP 8.1 теперь можно использовать тип возврата «никогда» следующим образом:

function throwException(): never {
    throw new Exception('This function always throws an exception!');
}

Явно указывая тип возвращаемого значения «никогда», вы даете понять как компилятору, так и другим разработчикам, что эта функция никогда не вернется нормально.

  1. Пример кода: завершение программы
    Другой сценарий, в котором используется тип возвращаемого значения «никогда», — это когда у вас есть код, который явно завершает выполнение программы. Например, рассмотрим следующий код:
function terminateProgram(): never {
    exit('Goodbye, world!');
}

В этом случае использование типа возврата «никогда» гарантирует немедленный выход из программы без необходимости использования оператора возврата.

  1. Использование «Никогда не возвращаемого типа» в реальных сценариях
    Мощь «Никогда не возвращаемого типа» становится особенно очевидной в сочетании с другими функциями PHP 8.1. Например, вы можете использовать его вместе с типами объединения для создания более выразительного и типобезопасного кода. Вы также можете комбинировать его с выражениями соответствия, чтобы с легкостью выполнять исчерпывающие проверки.

  2. Заключение
    С появлением в PHP 8.1 функции «Никогда не возвращать тип» у разработчиков появился мощный инструмент, позволяющий выразить свои намерения и сделать свой код более надежным и читаемым. Используя этот новый тип возвращаемого значения, вы можете явно указать, что функция или метод никогда не возвращает результат ни при каких обстоятельствах, будь то выдача исключения или завершение программы. Итак, используйте возможности PHP 8.1 и усовершенствуйте свой код!

Не забудьте обновить версию PHP до 8.1 и начать экспериментировать с типом «Никогда не возвращать», чтобы сразу увидеть преимущества в своих проектах.