⊗ppPmCdVTE 74 of 447 menu

Érték és típus szerinti egyenlőség a PHP-ban

Tegyük fel, hogy úgy szeretne összehasonlítani, hogy a szám idézőjelben ne legyen egyenlő ugyanazzal a számmal idézőjelek nélkül. Más szóval, azt szeretné, hogy az összehasonlítás ne csak az érték, hanem az adattípus szerint is történjen. Ehhez a == operátor helyett a === operátort kell használni. Az ilyen operátorral végzett összehasonlítást szigorúnak nevezzük.

Nézd meg a példát:

<?php if ('3' === 3) { echo '+++'; } else { echo '---'; // ez fog lefutni, mert az értékek típusa nem egyenlő } ?>

Viszont két '3' string összehasonlításakor a képernyőre '+++' íródik ki:

<?php if ('3' === '3') { echo '+++'; // ez fog lefutni } else { echo '---'; } ?>

Ugyanígy számok összehasonlításakor:

<?php if (3 === 3) { echo '+++'; // ez fog lefutni } else { echo '---'; } ?>

A két operátor közötti különbség pontosan akkor nyilvánul meg, amikor az értékek ugyanazok, de az adattípus különbözik. Minden más esetben ezek az operátorok ugyanúgy működnek. Például, különböző számok összehasonlításakor természetesen mínusz jelenik meg:

<?php if (2 === 3) { echo '+++'; } else { echo '---'; // ez fog lefutni } ?>

Manapság a PHP-ban általánosan elfogadott, hogy mindenhol szigorú összehasonlítást használjunk. Úgy tartják, hogy ebben az esetben a kód kevésbé hajlamos hibákra.

A kód futtatása nélkül határozd meg, mi jelenik meg a képernyőn:

<?php $test1 = '3'; $test2 = '3'; if ($test1 == $test2) { echo '+++'; } else { echo '---'; } ?>

A kód futtatása nélkül határozd meg, mi jelenik meg a képernyőn:

<?php $test1 = '3'; $test2 = '3'; if ($test1 === $test2) { echo '+++'; } else { echo '---'; } ?>

A kód futtatása nélkül határozd meg, mi jelenik meg a képernyőn:

<?php $test1 = 3; $test2 = '3'; if ($test1 == $test2) { echo '+++'; } else { echo '---'; } ?>

A kód futtatása nélkül határozd meg, mi jelenik meg a képernyőn:

<?php $test1 = 3; $test2 = '3'; if ($test1 === $test2) { echo '+++'; } else { echo '---'; } ?>

A kód futtatása nélkül határozd meg, mi jelenik meg a képernyőn:

<?php $test1 = 3; $test2 = 3; if ($test1 === $test2) { echo '+++'; } else { echo '---'; } ?>
csdaendeit