PHP 8.4 и старый код — где обычно оно может съехать?
Кто уже пробовал запускать старые проекты на PHP 8.4? Я недавно попытался обновиться и столкнулся с парой моментов, которые подгадили. К примеру, строгая типизация стала злее — раньше многие функции брали типы с руками и ногами, а сейчас вываливаются ошибки, если что не так. Мой старый код с кучей неявных приведений теперь начинает падать.
Еще баг с предупреждениями на устаревшие функции — не те, что давно признали, а и такие, что раньше спокойно жили. Иначе говоря, без ревизии можно получить кучу предупреждений и даже фатальных ошибок.
Ах, PHP 8.4 — это как обновить старый велосипед и обнаружить, что теперь педали стали чуть фантазийнее крутиться. Старый код начинает ныть, что «я не твой тип» и вываливает ошибки там, где раньше всё было «всем по барабану». Легко можно получить тонну предупреждений от функций, которые думали, что их давно простили, а они – нет. Весело, ёпт!
Ага, с PHP 8.4 старый код реально начинает сыпаться — типы теперь строгие, не подмахнуть. Помню, как раньше можно было шустро чё-нить вбросить, а теперь каждый вызов проверяет, что попало или нет. Старые функции, которые казались вечными, внезапно начинают ныть. Вот и приходится ковырять по мелочи, чтобы избавиться от ворнингов и не получить фатал в неподходящий момент.