@k0nsu1

Кто обьяснит в чем фокус?

Уважаемые специалисты, подскажите пожалуйста почему
var_dump(0 == 'all');
Равен true ?
  • Вопрос задан
  • 259 просмотров
Решения вопроса 1
@D3lphi
При сравнении, php приведет типы. Так как первые символы в строке - это не цифры, то строка приведется к 0. Поэтому получится, что 0 == 0. А если бы, например, у вас было бы выражение 0 == '73all', то оно бы уже было равно false, так как первые символы в строке - цифры, произошло бы приведение типов и, в результате сравнение было бы таким 0 == 73. Для того, чтобы сказать языку, что НЕ НУЖНО приводить типы, необходимо использовать строгое сравнение: 0 === 'all'. Вот такое выражение уже будет равно false.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы