PHP-ehtojen virheiden etsiminen koodista
Seuraavissa tehtävissä eräs ohjelmoija on kirjoittanut koodia ja mahdollisesti tehnyt siinä virheitä. Sinun tulee tarkistaa, tekeekö koodi sen, mitä on kuvattu. Jos koodi toimii väärin, sinun tulee korjata virheet.
Koodin tulee tarkistaa numeroiden summa:
<?php
$num1 = '1';
$num2 = '2';
if ($num1 + $num2 === '3') {
echo '+++'; // pitäisi tulostaa tämä
} else {
echo '---';
}
?>
Koodin tulee tarkistaa numeron ensimmäinen numero:
<?php
$num = 123;
if ($num[0] === 1) {
echo '+++';
} else {
echo '---';
}
?>
Koodin tulee tarkistaa numeron ensimmäinen numero:
<?php
$num = 123;
if ((string) $num[0] === 1) {
echo '+++';
} else {
echo '---';
}
?>
Koodin tulee tarkistaa numeron ensimmäinen numero:
<?php
$num = 123;
$str = (string) $num;
if ($str[0] === 1) {
echo '+++';
} else {
echo '---';
}
Koodin tulee tarkistaa, että numerossa on tasan kaksi numeroa:
<?php
$num = 12;
if (strlen($num) === 2) {
echo '+++';
} else {
echo '---';
}
?>
Koodin tulee tarkistaa numeron ensimmäinen numero:
<?php
$num = 123;
$str = (string) $num;
if ($num[0] === '1') {
echo '+++';
} else {
echo '---';
}
Koodin tulee tarkistaa, että numerossa on tasan kaksi numeroa:
<?php
$num = 12;
$str = (int) $num;
if (strlen($str) === 2) {
echo '+++';
} else {
echo '---';
}
?>
Esitetty koodi ei toimi niin, kuin tekijä on tarkoittanut:
<?php
$num = 1;
if ($num !== 1 or $num !== 2) {
echo '+++';
} else {
echo '---'; // pitäisi tulostaa tämä
}
?>
Selitä syy.
Esitetty koodi ei toimi niin, kuin tekijä on tarkoittanut:
<?php
$var1 = '1';
$var2 = '2';
if ($var1 + 1 === $var2) {
echo '+++'; // pitäisi toimia tämä
} else {
echo '---';
}
?>
Selitä syy.