Switch funktioniert nicht ?!

  • Hallo,
    erstmal habe ich folgenden Code:


    Wenn ich nun einen $type von z.B. "25" angebe, bleibt $validData bzw. die Funktion TRUE, sie sollte aber eigentlich 'ERROR('.$GLOBALS['errorCodes'][5].')' werden (siehe 'default:')
    kann mir vllt. irgendjemand sagen, warum das so ist ?(


    Danke schonmal für jegliche Hilfe


    EDIT: 'ERROR('.$GLOBALS['errorCodes'][5].')' soll folgendes ergeben: "ERROR(wrongArgumentOfFunction)"

  • Das einzige, was ich sehe ist, dass das break im default unnötig ist.
    Vlt kommt daher der Fehler?
    Hab allerdings noch keine Erfahrung mit switch.


    EDIT:
    @ramon1611


    Die cases beim switch sind verdattelt.
    Hab gestern noch was gelesen, dass man vorsichtig sein muss.
    Was genau da falsch läuft, weiss ich momentan nicht. Aber guck dir mal das bsp an:


    Es geht NICHT in den 2ten case. Die Bedingung funktioniert also nicht.


    Wenn du aber nach true switchst:


    So funktioniert es.
    Ich persönlich würde einfach if/elseif nutzen :)

  • ne, hab ich grade ausprobiert
    daher kommts auf jeden fall nicht


    EDIT:
    okay
    ich versuchs mal..


    EDIT2:
    Super, funktioniert wirklich :)
    danke dir

  • Habs.
    Im case kann man keine || usw nutzen.
    siehe:
    http://www.php.net/manual/de/control-structures.switch.php


    Es funktionert aber mit der switch(true) Methode.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!