Hallo,
im php Manual steht bei der Kontrollstruktur switch():
"Erst wenn eine case Anweisung gefunden wird die dem Wert des an switch übergebenen Ausdrucks entspricht beginnt PHP tatsächlich die folgenden Anweisungen auszuführen." [...]
Dann verstehe ich nicht, wieso folgender Code zur Ausgabe von "foo" führt:
<?php
$var = 0;
switch($var)
{
case 'foo': $ausgabe = 'foo'; break;
case 'bar': $ausgabe = 'bar';
}
if(isset($ausgabe))
{
echo $ausgabe;
}
?>
Weder der erste, noch der zweite Fall trifft zu. Deshalb würde ich hier erwarten, dass die if-Bedingung nicht greift, weil $ausgabe nicht existiert.
Kann mir bitte wer erklären, wieso dem nicht so ist? Wieso existiert $ausgabe und wieso mit dem Wert 'foo', obwohl keiner der beiden switch-Fälle zutrifft?
Mit lieben Grüßen
Melvin Cowznofski
--
What – me worry?
What – me worry?