Veröffentlicht 28. Juli 200817 j Hallo, ich würde gern prüfen, ob eine Varieble einen Wert hat.... allerdings möchte ich nicht nur prüfen ob sie einen Wert hat, sondern ob sie einen Wert aus eine Liste von möglichen Werten hat.... Das ganze geht ja prinzipiell schon mal so: if($TEST == 1 || $TEST == 2 || $TEST == 4) Allerdings finde ich diese Schreibweise etwas aufwendig, wenn man 50 Werte prüfen will.... Gib es da eine einfache Lösung für?
28. Juli 200817 j Allerdings finde ich diese Schreibweise etwas aufwendig, wenn man 50 Werte prüfen will.... Gib es da eine einfache Lösung für? Das kommt auf deine Liste an. Wenn es sich dabei um ein Array handelt kannst du das nutzen: PHP: in_array - Manual und wenn du den Key dazu brauchst: PHP: array_search - Manual EDIT: Ist es Zufall das du 1, 2 und 4 gewählt hast oder was für Werte sind das die du da prüfen willst? Wenn es nur Zahlen sind ginge das ja auch anders.
28. Juli 200817 j Mir würde jetzt spontan einfallen, dass du die möglichen Werte in ein Array packst. Dann lässt du die Werte im Array mit dem deiner Variable in einer Schleife vergleichen und wenn du einen Treffer hast, soll er den gewünschten Code ausführen und danach die Schleife abbrechen.
28. Juli 200817 j Die Idee mit dem Array ist super.... und mit in_array braucht man auch keine zusätzlichen Schleifen um das Array zu durchsuchen.... (Anbei: Die Liste enthält verschiedene Textstrings, die Zahlen waren nur zur Verdeutlichung wie ich es nicht machen wollte *g*) Hier noch die Lösung, vllt hilfts ja noch anderen: $Variable="foo"; $liste=array( "foo", "bar", "test", "....", "....", "last" ); if(in_array($Variable,$liste)) $Variable="new_foo"; [/PHP]
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.