Покинул форум
Сообщений всего: 8
Дата рег-ции: Нояб. 2011
Помог: 1 раз(а)
Попробуй echo (int)'r' //напечатает 0. Перед сравнением PHP автоматически пытается преобразовать строку в целое. Если бы было '4r' получилось бы 4, а если первый символ строки буква, то в результате приведения возвращается 0.
Покинул форум
Сообщений всего: 1026
Дата рег-ции: Июнь 2011 Откуда: rostov
Помог: 9 раз(а)
не знаю прав нет.. Но в си++ так например: if(1=='ха') то должно вернуть правду(отсчет начинается с 0*).. написано прекрасно, цитирую как помню.. Если переменная 1 равна int(целое число), и переменная 2 char[](текстовый массив), то при их сравнение береться длина массива(стрлен)(*) и значение цисла инт..
----- http://mysitecost.ru
SAD
Отправлено: 09 Ноября, 2011 - 22:40:39
Постоянный участник
Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009 Откуда: Днепропетровск, Украина
Помог: 75 раз(а)
mik_name пишет:
Перед сравнением PHP автоматически пытается преобразовать строку в целое
таки да...
Саныч
Отправлено: 09 Ноября, 2011 - 22:42:59
Участник
Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010 Откуда: Украина, Запорожье
Помог: 62 раз(а)
SAD пишет:
товарищи, мне вот интересно почему при сравнении 0 и, например, 'r' возвращается true ?
автоматическое приведение типов называется
----- Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.