Если вам нравится SbUP Форум, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....

 

PHP сравниение строки и числа, не могу понять

Автор Рупорт, 06-11-2015, 23:23:21

« назад - далее »

РупортTopic starter

<?php
$a=0;
if ($a=='qwerty') echo 'qwerty'; //это условия ведь не должно выполняться!
Но скрипт выводит на экран qwerty.
Как так?
  •  


Sevab

Рупорт, т.к. вы присвоили $a значение ноль, интерпретатор считает переменную числом.
Далее, при сравнении со строкой, он пытается интерпретировать строку как число. Вот такой бы вариант "3qwerty" он приравнял бы к трем. Ваш вариант он приравнивает к нулю, т.к. к другому числу не получается.

Что бы не было подобных недоразумений, нужно абсолютное сравнение, т.е. три раза (а не два) равно.

Такой вариант будет работать:

<?php$a=0;if ($a==='qwerty') echo 'qwerty';



Если вам нравится SbUP Форум, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....