Ricerca di errori nel codice con condizioni PHP
Nei seguenti problemi, un programmatore ha scritto del codice e potrebbe aver commesso degli errori. Devi controllare se il codice fa ciò che è descritto. Se il codice non funziona correttamente, devi correggere gli errori.
Il codice dovrebbe verificare la somma dei numeri:
<?php
$num1 = '1';
$num2 = '2';
if ($num1 + $num2 === '3') {
echo '+++'; // dovrebbe stampare questo
} else {
echo '---';
}
?>
Il codice dovrebbe verificare la prima cifra del numero:
<?php
$num = 123;
if ($num[0] === 1) {
echo '+++';
} else {
echo '---';
}
?>
Il codice dovrebbe verificare la prima cifra del numero:
<?php
$num = 123;
if ((string) $num[0] === 1) {
echo '+++';
} else {
echo '---';
}
?>
Il codice dovrebbe verificare la prima cifra del numero:
<?php
$num = 123;
$str = (string) $num;
if ($str[0] === 1) {
echo '+++';
} else {
echo '---';
}
Il codice dovrebbe verificare che il numero abbia esattamente due cifre:
<?php
$num = 12;
if (strlen($num) === 2) {
echo '+++';
} else {
echo '---';
}
?>
Il codice dovrebbe verificare la prima cifra del numero:
<?php
$num = 123;
$str = (string) $num;
if ($num[0] === '1') {
echo '+++';
} else {
echo '---';
}
Il codice dovrebbe verificare che il numero abbia esattamente due cifre:
<?php
$num = 12;
$str = (int) $num;
if (strlen($str) === 2) {
echo '+++';
} else {
echo '---';
}
?>
Il codice fornito non funziona come l'autore aveva intenzione:
<?php
$num = 1;
if ($num !== 1 or $num !== 2) {
echo '+++';
} else {
echo '---'; // dovrebbe stampare questo
}
?>
Spiegane il motivo.
Il codice fornito non funziona come l'autore aveva intenzione:
<?php
$var1 = '1';
$var2 = '2';
if ($var1 + 1 === $var2) {
echo '+++'; // dovrebbe attivarsi questo
} else {
echo '---';
}
?>
Spiegane il motivo.