Debugging
In deze les gaan we code debuggen
In de onderstaande blokjes code zitten meerdere fouten, haal deze eruit en maak de code werkend.
Opgave 1
<?php
for($i=0; $i<10; $i++)
echo $i."<br>"
}
Opgave 2
<?php
$a=1;
if ($a) {
echo "Hello darkness my old friend!"
else {
echo "There is no way this will go around";
}
Opgave 3
<?php
$string="Hallo";
echo <<< TEKST
$string allemaal
TEXT;
echo "<br>";
echo 'Nog een keer $string';
Opgave 4
<?php
$myArray=["a","b","c","d","e"];
array_push($myArray,k,l,m,n,o);
echo strtoupper(array_shift($myArray));
echo strtoupper(array_pop($myArray));
Opgave 5
<?php
$myArray=[ [ titel => 'The Adventures of Olm', 'price' => 9.89 ],
[ titel => 'Speak Louder', 'price' => 12.49 ],
[ titel => 'Advanced PHP', 'price' => 34.99 ] ];
foreach ($myArray as $item) {
foreach($item as $key => $value) {
echo $key.':'.$value."<br>"
}
echo <hr>;
}
Opgave 6
Deze code geeft geen foutmelding, maar de browser blijft hangen. Waarom? Verbeter de code.
<?php
for ($i=0; $i<10; $i++) {
if ($i=1) {
echo $i."<br>";
}
}
Opgave 7
Deze code geeft foutmelding, en de browser blijft (mogleijk) hangen. Waarom? Verbeter de code.
<?php
for($nummer=0; $nummer<10; $number++)
if ($number%2==0) {
echo "Just antoher line....";
echo "...and the even number is....".$number."<br>";
}
Opgave 8
Als output moet er een goede tabel komen met twee kolommen. In kolom 1 staat 1 t/m 10 en in kolom 2 staat 2,4,6,8,10
<?php
echo "<table><br>";
for($i=1;$i<10;$i=$i+1)
echo "<tr>";
echo "<td>".$i."</td><td>".$i*2.</td>";
echo "</tr>";
}
echo "</table><br>"
?>
Opgave 9
function setMyCookie() {
echo "<pre>";
print_r($_COOKIE);
echo "Set cookie";
if ( isset( $_COOKIE['counter'] ) )
$counter = $_COOKIE['counter'] + 1;
} else {
$counter = 0;
}
setcookie('counter',$counter,time()+10);
print_r($_COOKIE);
echo "</pre>"
}
?>
<?php setMyCookie(); ?>
Opgave 10
<?php
$i=0;
$total=-3;
while($i++<30) {
if ($total<100 && $total<>O ) {
$total+=$i;
} else {
$total-=$i;
}
}
echo $total;
// Uitkomst moet 88 zijn!