Мукоисаи ғайри қатъии қиматҳои мантиқӣ дар PHP
Дар мисоли гузашта ман барои мукоиса истифода бурдам
оператори ===. Дар ин ҳолат тағирёбандаи мо
баробарӣ мукоиса мешуд бо true ҳам
аз рӯи қимат ва ҳам аз рӯи навъ.
Дар вазифаи мо метавон истифода кард ва оператори
==. Агар дар тағирёбандаи test
ҳамеша яке аз қиматҳои true
ё false бошад, пас чизе низ тағир намеёбад:
<?php
$test = true; // дар ин ҷо ё true, ё false менависем
if ($test == true) {
echo '+++';
} else {
echo '---';
}
?>
Вале агар ба тағирёбандаи $test метавонад
ҳар гуна қиматҳо бираванд, пас ҳама чиз мешавад
ҳамагӣ мураккабтар. Дар чунин ҳолат, агар дар тағирёбанда
қимати мантиқӣ набошад, пас ин қимат
аввал ба мантиқӣ табдил дода мешавад ва фақат
пас мукоиса карда мешавад.
Бигзор, масалан, дар тағирёбандаи мо бошад
рақами 1. Дар ин ҳолат он аввал
ба навъи мантиқӣ табдил дода мешавад, яъне
ба true. Ва пас мукоиса иҷро карда мешавад:
<?php
$test = 1;
if ($test == true) {
echo '+++'; // ин кор мекунад, зеро 1 == true - ин дуруст аст
} else {
echo '---';
}
?>
Вале, масалан, рақами 0 табдил дода мешавад
ба false. Ва шарти мо дар натиҷа
дуруст нахоҳад буд:
<?php
$test = 0;
if ($test == true) {
echo '+++';
} else {
echo '---'; // ин кор мекунад, зеро 0 == true - ин НОдуруст аст
}
?>
Бе иҷро кардани рамз, муайян кунед, ки чӣ ба навор бароварда мешавад:
<?php
$test = 1;
if ($test == true) {
echo '+++';
} else {
echo '---';
}
?>
Бе иҷро кардани рамз, муайян кунед, ки чӣ ба навор бароварда мешавад:
<?php
$test = 0;
if ($test == true) {
echo '+++';
} else {
echo '---';
}
?>
Бе иҷро кардани рамз, муайян кунед, ки чӣ ба навор бароварда мешавад:
<?php
$test = 1;
if ($test == false) {
echo '+++';
} else {
echo '---';
}
?>
Бе иҷро кардани рамз, муайян кунед, ки чӣ ба навор бароварда мешавад:
<?php
$test = 1;
if ($test != true) {
echo '+++';
} else {
echo '---';
}
?>
Бе иҷро кардани рамз, муайян кунед, ки чӣ ба навор бароварда мешавад:
<?php
$test = '';
if ($test == false) {
echo '+++';
} else {
echo '---';
}
?>
Бе иҷро кардани рамз, муайян кунед, ки чӣ ба навор бароварда мешавад:
<?php
if ($test == true) {
echo '+++';
} else {
echo '---';
}
?>