Пытаюсь врубиться, как работает преобразование типов данных, чтобы статически выводить типы. Можно же понять, какой тип получится в выражении? Если пойму, тогда можно будет отлавливать ошибки присвоения
- При
$string + number оператор превращает number в строку и соединяет ее со $string
- При
number + $string пытается превратить $string в числовой тип, если не получается, тогда пишет выбивает ошибку несоответствия типов данных
Получается, что общий принцип для бинарных операторов такой: первый_тип ○ второй_тип -> первый_тип.
Пытаюсь врубиться, как работает преобразование типов данных, чтобы статически выводить типы. Можно же понять, какой тип получится в выражении? Если пойму, тогда можно будет отлавливать ошибки присвоения
$string + numberоператор превращаетnumberв строку и соединяет ее со$stringnumber + $stringпытается превратить$stringв числовой тип, если не получается, тогда пишет выбивает ошибку несоответствия типов данныхПолучается, что общий принцип для бинарных операторов такой:
первый_тип ○ второй_тип -> первый_тип.