Привет. Народ, а как вы вообще относитесь к тому что начиная с php7.1 простой кажется код: Код (Text): print '' + 2.5; выдает warning: WARNING A non-numeric value encountered on line number 3 При этом если вместо пустой строки будет null или false то оно в ноль их преобразует, а вот пустую строку без варнинга не хочет. Вот так все время преобразовывать? Вроде основы как раз php были в том что само преобразует типы..
Положительно. Не пропускайте совсем уж жесть, и все будет норм. '' + 2.5 – жесть '0' + 2.5 – не жесть
это не основы... это нестрогая типизация, и приведение всего и все ко всему))) и очень часто дает непредсказуемый результат... сейчас php повзрослел, и идет к строгой типизации
С пустой строкой приходят все формы, это как значение по умолчанию. От '0' оно сильно отличается. Ноль - это осознанный ввод, когда пользователь его ввел. А когда он например поле не заполнил, он не захочет чтобы там появились нули вместо "пусто". Понятно что сейчас я подгадал как все это сделать. Но традиционно это все - empty значения, по названию функции считающей их такими, че его к нулю не приводит, когда: Код (Text): print empty('0') === empty(''); Они даже в документации эту особенность не объясняют: