php сравнение



Автор Maximus задал вопрос в разделе Другие языки и технологии

PHP, сравнение чисел - неожиданный результат и получил лучший ответ

Ответ от Cheery[гуру]
Цифры сами подставили или там были переменные? Если переменные, то какого типа были значения на момент проверки (численные или строковые) ?
В строковом виде "12000" < "8010", так как идет сравнение посимвольно слева направо.
В вашем примере же
var_dump(12000 >= 8010 && 12000 <= 12000);
выдает все правильно
bool(true)Cheery
Высший разум
(199206)
Покажите пример того, что у хостера запускаете..

Ответ от Александр Дружков[гуру]
php - слабо типизированный язык. То, что вы видите как число, вполне может быть строкой (например, после выборки из базы данных) . Поэтому при сравнениях надо быть 100%-но уверенным, что вы работаете с числами. Если не уверены - используйте intval.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: PHP, сравнение чисел - неожиданный результат
спросили в DJing
Почему по PHP материалов много, а по Django - нет?
php - мёртвый язык, а тот нет
Михаил
Профи
(637)подробнее...
спросили в Nomen dubium
PHP + MySQL запись в базу данных
Да, все отлично, строку запроса сделал, а выполнять запрос кто будет?)

Папаша
подробнее...

Ассоциативные массивы PHP
гугли понятие "хэш-таблица"

Грубо говоря, пхп создает массив, где четные элементы -
подробнее...

Сравнение переменными PHP с данными из таблицы MySQL
присвоить одной переменной значение, которое получается с БД
if($l==$s}{echo('lol');}подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:

Есть ли у OpenServer недостатки по сравнению с Denver?
Никаких. Сам сижу на оперсервере. Удобство что всё легко настраивается.
Добавить домен -
подробнее...
спросили в Ixodida
PHP. В чем ошибка? if(isset($_GET['id']=1)) { echo "Jhuetb"; }
эм...

массив GET только для чтения... зачем ты присваиваешь значение ?

может
подробнее...

Что лучше: HTML или PHP?
PHP без HTML не имеет смысла. HTML - язык гипертекстовой разметки, позволяющий расположить контент
подробнее...
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*