Hallo Sven,
Das verstehe ich nicht. Was meinst du damit?
Du hast zweimal Switch und dazwischen etwas IF.
switch ($count)
...
if ($count)
if ($count)
switch ($count)An allen Stellen trennst du nach immer denselben drei Fällen (Werte 2, 3 oder 4 für $count). Da "dazwischen" nichts passiert, was in allen drei Fällen gemeinsam passiert, kannst du deine Trennung auch in genau einem Switch unterbringen.
Ach so, du meintest in der Art?
switch($count)
{
case 2:
$temp = $intermediate[0];
echo $temp." » ".$title;
break;
case 3:
$temp = $intermediate[0];
$path = strtoupper($intermediate[1]);
echo $temp." » ".$path." » ".$title;
break;
case 4:
$temp = $intermediate[0];
$path = strtoupper($intermediate[1]);
$subpath = strtoupper($intermediate[2]);
echo $temp." » ".$path." » ".$subpath." » ".$title;
break;
}
Ich habe die if-Abfrage folgendermaßen abgeändert, und so funktioniert es:
if ($i < count($pfad)-1)
In dieser Konfiguration wird beim letzten Teil auf else verzweigt.
Der typische "off by one"-Fehler. War ja klar, ich baue gerne Fehler ein, die absolut unscheinbar sind. Aber du warst gewarnt. :)
Ja, wobei mich die Zählweise von count() nun doch etwas überrascht hat und ich einige Zeit brauchte, um auf die Lösung zu kommen. ;-)
Die Logik dahinter ist mir nicht ganz klar.
Danke dir!
Gruß
Kurt
"Arm ist nicht der, der wenig hat, sondern der, der nicht genug bekommen kann." (Jean Guéhenno; fr. Paedagoge, Kritiker u. Schriftsteller; 1890-1978)
http://elektro-dunzinger.at
http://shop.elektro-dunzinger.at