Здравствуйте!
Вот какой вопрос.
Вроде просто но никак.
echo 'SUMMA 2+5 = ' . 2+5;
Почему выводит просто 5.
Так echo 'SUMMA 2+5 = '; показывает SUMMA 2+5 =
Так echo 2+5; показывает 7
А так echo 'SUMMA 2+5 = ' . 2+5;
Выводит просто 5.
1. ytrewq123 - 18 Декабря, 2016 - 11:30:51 - перейти к сообщению
2. Мелкий - 18 Декабря, 2016 - 12:04:17 - перейти к сообщению
Равный приоритет операторов и фокусы приведения типов. В 7.1 вроде уже не будет происходить тихо, предупреждение выдаст.
Сначала выполнилась конкатенация, получилось выражение
Сначала выполнилась конкатенация, получилось выражение
Операция +, оба операнда приводятся к числу. Строка приводится к 0, т.к. не начинается с числа.
0+5 = 5, это и выведено.
Используйте явный приоритет