Комментарии: Немножко о типизации и сравнениях в PHP https://intsystem.org/security/tipizaciya-sravneniya-php/ Случаи из опыта разработки различных WEB проектов. Интересные факты, статьи, впечатления. Программирование и все о нем в сфере WEB. Sun, 29 Nov 2015 14:03:30 +0000 hourly 1 https://wordpress.org/?v=6.9.1 Автор: Дмитрий Амиров https://intsystem.org/security/tipizaciya-sravneniya-php/#comment-1869 Sat, 15 Dec 2012 17:49:55 +0000 http://intsystem.org/?p=118#comment-1869 В ответ на Роберт.

Потому что при сравнении строка приводится к числу, к примеру:

var_dump((int)"bla"); //выведет "int 0"
var_dump((int)"0bla"); //выведет "int 0"
var_dump((int)"99bla"); //выведет "int 99"
var_dump((int)"99bla123"); //выведет "int 99"
var_dump((float)"9.9bla"); //выведет "float 9.9"

Т.е. грубо говоря из строки берутся начальные символы до первого «не числового» символа. Естественно если числовых символов в начале строки нет, то такая строка приведется к «int 0».

Ну и дальше все верно «int 0==int 0»

Надеюсь я смог пояснить)

]]>
Автор: Роберт https://intsystem.org/security/tipizaciya-sravneniya-php/#comment-1863 Sat, 15 Dec 2012 15:15:19 +0000 http://intsystem.org/?p=118#comment-1863 Всё понятн и логично.
Единстенное, чего никогда не понимал — Где логика, почему "txt" == 0
Может тут кто пояснит?

]]>