|
|
|
| аналогичны ли следующие выражения?
1) if (empty($var))
2) if ($var==''))
3) if (!$var)
|
| |
|
|
|
|
|
|
|
для: irr
(27.10.2005 в 05:44)
| | Нет.
Первое проверяет была ли переменная инициализирована.
Второе проверят значение переменной, равняется ли оно пустой строке.
Третье возвращает boolean (true или false). T.e проверят обратное, перевернутое значение переменной. | |
|
|
|
|
|
|
|
для: codexomega
(27.10.2005 в 06:11)
| | спасибо :). только у меня теперь еще больше вопросов возникло. надо наверное теорию читать :(.
1) что значит "переменная инициализирована"? т.е. ей присвоено какое-то значение, будь то строка, число или boolean?
2) есть ли разница между пустой строкой, 0 и false?
<?php
$var=false; // или $var=0;
if ($var=='') { echo "истина"; } else { echo "ложь"; }
?>
|
этот пример в обоих случаях выводит "истина", хотя $var не равно именно *пустой строке*! она равна false в первом случае, и 0 во втором.
тогда в чем же разница между 1) if (empty($var)) и 2) if ($var==''))?
3) то же самое будет если
<?php
$var=false; // или $var=0; или $var='';
if (!$var) { echo "истина"; } else { echo "ложь"; }
?>
|
во всех 3-х случаях выведется "истина".
тогда в чем же разница между 2) if ($var=='')) и 3) if (!$var))? | |
|
|
|
|
|
|
|
для: irr
(27.10.2005 в 06:45)
| | Разница в том что !$var имеет только две возможности (true ili false) теоретически, но на практике там какое то значение которое отличаеться от привычных true и false. только PHP умеет понимать true ето или false.а ты можеш тока условие подставить.... $var == '' где $var может быть чем угодно. Если не веришь можешь проверить через код где условие истиности напиши после echo($var). и ты сам увидишь | |
|
|
|
|
|
|
|
для: hatsker
(27.10.2005 в 09:09)
| | что-то я ничего не понял. как это, отличается от привычных true и false? и какой код написать? | |
|
|
|