Ανισότητα ως προς την τιμή και τον τύπο στην PHP
Εκτός από τον τελεστή != υπάρχει επίσης
ο τελεστής !==, ο οποίος λαμβάνει υπόψη τον τύπο κατά
τη σύγκριση. Ας εξετάσουμε τις διαφορές μεταξύ
τους με παραδείγματα.
Ας υποθέσουμε ότι με τον τελεστή != συγκρίνονται
δύο αριθμοί 3. Αυτός ο τελεστής συγκρίνει
τις τιμές ως προς το αν ΔΕΝ είναι ίσες. Εφόσον
οι τιμές μας είναι όντως ίσες, τότε στην οθόνη
θα εμφανιστεί '-':
<?php
if (3 != 3) {
echo '+++';
} else {
echo '---'; // αυτό θα εκτελεστεί, αφού οι τιμές είναι ίσες
}
?>
Ας υποθέσουμε τώρα ότι μία από τις τιμές μας θα είναι
σε εισαγωγικά. Σε αυτήν την περίπτωση, ο τελεστής !=
θα τις θεωρήσει πάλι ίσες (καθώς ταιριάζει η
τιμή, ενώ ο τύπος δεν είναι σημαντικός για αυτόν τον τελεστή)
και πάλι θα εμφανίσει '-':
<?php
if ('3' != 3) {
echo '+++';
} else {
echo '---'; // αυτό θα εκτελεστεί, αφού οι τιμές είναι ίσες
}
?>
Ας συγκρίνουμε τώρα δύο αριθμούς 3
με τον τελεστή !==. Αυτός επίσης
θα τους θεωρήσει ίσους και θα εμφανίσει '-':
<?php
if (3 !== 3) {
echo '+++';
} else {
echo '---'; // αυτό θα εκτελεστεί, αφού οι τιμές είναι ίσες
}
?>
Ωστόσο, αν τώρα βάλουμε ένα από τα τρία σε εισαγωγικά,
τότε ο τελεστής !== θα θεωρήσει τις τριάδες μας
ανίσες, καθώς, αν και οι τιμές τους ταιριάζουν,
έχουν διαφορετικό τύπο:
<?php
if ('3' !== 3) {
echo '+++'; // αυτό θα εκτελεστεί, αφού οι τιμές ΔΕΝ είναι ίσες
} else {
echo '---';
}
?>
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
<?php
$test1 = '3';
$test2 = '3';
if ($test1 != $test2) {
echo '+++';
} else {
echo '---';
}
?>
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
<?php
$test1 = '3';
$test2 = '3';
if ($test1 !== $test2) {
echo '+++';
} else {
echo '---';
}
?>
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
<?php
$test1 = 3;
$test2 = '3';
if ($test1 != $test2) {
echo '+++';
} else {
echo '---';
}
?>
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
<?php
$test1 = 3;
$test2 = '3';
if ($test1 !== $test2) {
echo '+++';
} else {
echo '---';
}
?>
Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην οθόνη:
<?php
$test1 = 3;
$test2 = 2;
if ($test1 !== $test2) {
echo '+++';
} else {
echo '---';
}
?>