Forum Doku Wiki Blog

Forumsarchiv 2002, August
if, else und elseif - gehts auch kürzer?

archivierte Beiträge lesen

  1. (PHP) if, else und elseif - gehts auch kürzer? von Stefan, 01. 08. 2002, 23:04

if, else und elseif - gehts auch kürzer?

Der folgende Beitrag wurde am 01. 08. 2002, 23:04 Uhr von Stefan veröffentlicht.

Hallo zusammen,

habe eine include-Datei mit einer Sehr großen Anzahl an if, else und elseif - Entscheidungen, etwa in diesem Format:

if ($test == "blau";)
{
$test2 = "4444";
}
elseif ($test == "grau";)
{
$test2 = "2222";
}
elseif ($test == "gelb";)
{
$test2 = "1111";
}

... es folgen noch ca. 20 weitere ...

Kann man dies irgendwie schlauer programmieren? Geht das kürzer?
Vielen Dank für Eure Hilfe,

Gruß,
Stefan

if, else und elseif - gehts auch kürzer?

Der folgende Beitrag wurde am 01. 08. 2002, 23:20 Uhr von Stefan veröffentlicht.

> Kann man dies irgendwie schlauer programmieren? Geht das kürzer?

Ja, entweder mit einem Array oder mit einem case-Block.

Stefan

if, else und elseif - gehts auch kürzer?

Der folgende Beitrag wurde am 01. 08. 2002, 23:34 Uhr von Stefan veröffentlicht.

Hallo Stefan,

> Ja, entweder mit einem Array oder mit einem case-Block.

Was ist ein Case-Block?
Hast Du ein Beispiel parat, das meinem Problem nahe kommt?

Gruß,
Stefan (der Fragende)

if, else und elseif - gehts auch kürzer?

Der folgende Beitrag wurde am 02. 08. 2002, 00:02 Uhr von Götz veröffentlicht.

Hallo Stefan!

Bei lauter stefans wird man ja ganz wirr ... ;)

> Was ist ein Case-Block?
> Hast Du ein Beispiel parat, das meinem Problem nahe kommt?

Schau mal ins PHP Manual, das sollte helfen! (--> http://www.php.net/manual/en/control-structures.switch.php)

MfG
Götz

if, else und elseif - gehts auch kürzer?

Der folgende Beitrag wurde am 02. 08. 2002, 14:20 Uhr von Stefan veröffentlicht.

> Was ist ein Case-Block?
> Hast Du ein Beispiel parat, das meinem Problem nahe kommt?

switch($test1) {
 case 1111: $test2="blau"; break;
 case 2222: $test2="gruen"; break;
}

Stefan

if, else und elseif - gehts auch kürzer?

Der folgende Beitrag wurde am 01. 08. 2002, 23:24 Uhr von Christoph Schnauß veröffentlicht.

hi Stefan,

naja, "if/elseif/else" kannst du nicht mehr verkürzen. Aber wenn es, wie in deinem Fall, 20 und mehr "elseif"-Ausweichbedingungen gibt, läßt sich das sicherlich mit einem Array lösen. Schreib das, was du hinter "elseif" jetzt immer in Klammern eingetragen hast, in einen Array, den du dann mit einer einzigen "if"-Anweisung auslesen lassen kannst.Ein zweiter Array nimmt dann die Anweisungen auf, so daß du im Prinzip so eine Konstruktion bekommst:

if (array1[Nr])(array2[Nr])
else (sorry, klappt nicht, falscher Fehler ...)

Grüße

Christoph S.

if, else und elseif - gehts auch kürzer?

Der folgende Beitrag wurde am 02. 08. 2002, 18:50 Uhr von Michael Schröpl veröffentlicht.

Hi,

> if ($test == "blau";)
> {
> $test2 = "4444";
> }
> elseif ($test == "grau";)
> {
> $test2 = "2222";
> }
> elseif ($test == "gelb";)
> {
> $test2 = "1111";
> }
> ... es folgen noch ca. 20 weitere ...

die alle immer nur $test2 in Abhängigkeit von $test einen Wert zuweisen?

Wenn ja, dann bau Dir einen Übersetzungs-Hash, den Du mit dem Wert von
$test indizierst.

Viele Grüße
      Michael

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4