Функция высшего порядка (HOF) — это функция, которая соответствует хотя бы одному из следующих условий:
- Принимает одну или несколько функций в качестве аргументов
- Возвращает функцию как результат
источник
А затем из PHP Void RFC:
С return
; и return null
; технически эквивалентны в PHP; когда возвращаемое значение не указано, PHP выдаст вам null
. Однако выбор одного из двух предполагает намерение. Если вы укажете значение, это предполагает, что значение является значимым. В функции void возвращаемое значение не имеет значения: оно всегда одно и то же и не имеет реальной пользы. Явное указание с возвратом null; бессмысленно, потому что на самом деле не имеет значения, какое значение будет возвращать функция.
(Мои основные моменты)
Следовательно, просто нет необходимости предоставлять предупреждение, и потребуется просто использовать другую функцию и дополнительные значительные накладные расходы времени компиляции, чтобы уведомить об ошибке возврата в части кода, который преднамеренно предназначен не возвращаться .
Подумайте об этом так:
- Я буду держать много губок наготове на случай, если опрокинется пустой пакет из-под молока.
Коробка всегда будет пустой, так что нет необходимости идти в магазин и покупать 12 супервпитывающих губок!
Чтобы узнать, какие именно функции будут вызываться, попробуйте изучить (с открытым исходным кодом) логику обработки ошибок во время компиляции PHP 7; чтобы увидеть, какие функции будут вызываться для обработки функции, вызывающей аналогичную ошибку (например, возвращающую нераспознанный или неправильный тип).
Эти функции будут теми, которые не вызываются, автоматически возвращая null
вместо ошибки в PHP 7.1, предназначенных для возвращаемых типов void
.
person
Martin
schedule
14.09.2018