Forum Webscript.Ru

Программирование => PHP => Тема начата: Radiobugger от 03 Марта 2005, 13:41:56

Название: количество знаков = в условиях
Отправлено: Radiobugger от 03 Марта 2005, 13:41:56
Кто знает какая разница в количестве знаков равно в условиях if или её вообще нет?
Вот например какая разница между этим:

if ($a=$b) этим if ($a==$b) и вот этим if ($a===$b)
 
я стал сомневаться в этом после прочтения этой маленькой статьи http://www.securitylab.ru/52986.html
Название: количество знаков = в условиях
Отправлено: 2NetFly от 03 Марта 2005, 14:20:17
$a == $b, Equal, TRUE if $a is equal to $b.
$a === $b, Identical, TRUE if $a is equal to $b, and they are of the same type.
Название: количество знаков = в условиях
Отправлено: Макс от 03 Марта 2005, 14:33:05
if ($a=$b) - переменной $a присваивается значение переменной $b.
В зависимости от значения $b возвращает true/false
http://www.php.net/manual/en/language.types.boolean.php#language.types.boolean.casting

$a == $b, - здесь сначало приводятся типы, а потом сравниваются значения.
Поэтому if (0 == \'a\')  равно true;

$a === $b - сначало сравниваются типы данных, если они равны. сравниваются их значения (более строгая проверка)