Lighed efter værdi og type i PHP
Lad os sige, at du ønsker at sammenligne på en sådan måde, at tallet
i anførselstegn ikke er lig med det samme tal
uden anførselstegn. Med andre ord, du ønsker at
sammenligne på en måde, så sammenligningen ikke kun sker
efter værdi, men også efter datatype. For at gøre dette
skal du i stedet for operatoren == bruge
operatoren ===. Sammenligning med en sådan operator
kaldes streng.
Se eksemplet:
<?php
if ('3' === 3) {
echo '+++';
} else {
echo '---'; // dette vil køre, fordi værdierne ikke er ens i type
}
?>
Men ved sammenligning af to strenge '3'
vil der blive vist '+' på skærmen:
<?php
if ('3' === '3') {
echo '+++'; // dette vil køre
} else {
echo '---';
}
?>
På samme måde som ved sammenligning af tal:
<?php
if (3 === 3) {
echo '+++'; // dette vil køre
} else {
echo '---';
}
?>
Forskellen mellem de to operatorer viser sig præcis når værdierne er de samme, men datatypen er forskellig. I alle andre tilfælde virker disse operatorer på samme måde. For eksempel, ved sammenligning af forskellige tal, vil der selvfølgelig blive vist minus:
<?php
if (2 === 3) {
echo '+++';
} else {
echo '---'; // dette vil køre
}
?>
I nutidens PHP er det almindeligt accepteret at bruge streng sammenligning overalt. Det menes, at koden i dette tilfælde er mindre modtagelig for fejl.
Uden at køre koden, skal du afgøre, hvad der vil blive vist på skærmen:
<?php
$test1 = '3';
$test2 = '3';
if ($test1 == $test2) {
echo '+++';
} else {
echo '---';
}
?>
Uden at køre koden, skal du afgøre, hvad der vil blive vist på skærmen:
<?php
$test1 = '3';
$test2 = '3';
if ($test1 === $test2) {
echo '+++';
} else {
echo '---';
}
?>
Uden at køre koden, skal du afgøre, hvad der vil blive vist på skærmen:
<?php
$test1 = 3;
$test2 = '3';
if ($test1 == $test2) {
echo '+++';
} else {
echo '---';
}
?>
Uden at køre koden, skal du afgøre, hvad der vil blive vist på skærmen:
<?php
$test1 = 3;
$test2 = '3';
if ($test1 === $test2) {
echo '+++';
} else {
echo '---';
}
?>
Uden at køre koden, skal du afgøre, hvad der vil blive vist på skærmen:
<?php
$test1 = 3;
$test2 = 3;
if ($test1 === $test2) {
echo '+++';
} else {
echo '---';
}
?>