LShark пишет:Но все таки ПОЧЕМУ?
боюсь ошибитьcя, но по-моему дело в приоритете выполнения операторов.
PHP:
скопировать код в буфер обмена
// имеем:
'one' . 1 + $i . 'two'
// где $i - числовое значение.
// первое действие - конкатенация ('one' . 1), получаем:
'one1' + $i . 'two'
// второе действие - сложение ('one1' + $i).
// Здесь строка складывается с числом, поэтому включается
// приведение типов к int. Строка 'one1' приводится
// к значению «0» и выполняется сложение: 0 + 1, получаем:
1 . 'two'
// ну и конечный результат:
'1two'
PS. хотелось бы от профессионалов услышать мнение по этому поводу )