2014-06-18 11 views
6

gibt es eine Möglichkeit, eine Kurzschrift zu schreiben, wenn, ELSE IF, else-Anweisung für PHP.shorthand php wenn {} ELSE IF {} else {}

wenn/sonst ist klar, aber gibt es einen shorthanded Weg, wenn ich elseif auch verwenden möchte (außer Schalter)?

if ($typeArray == 'date'){ 
    echo 'date'; 
} else if($typeArray == 'time'){ 
    echo 'time'; 
} else { 
    echo 'text'; 
} 

haben noch keine gute Antwort sonst zu finden, wo es eine Kurzversion für verschachtelte, wenn Aussagen einer elseif einschließlich.

Grüße timmi

+0

Verwenden Sie oop PHP können Sie dies als jeden Fall als Methode Name zu erreichen. – Sundar

+1

Das ist so kurz wie es wird, während Sie Ihre geistige Gesundheit behalten. –

+0

Es gibt TERNARY OPERATORS, sie bieten so etwas an (und ich bin zu faul, um eine vollständige Antwort zu schreiben) :) – Sliq

Antwort

21

Sie suchen nach ternary statements suchen.

Syntax:

$condition ? $value_if_true : $value_if_false 

Syntax für verschachtelte ternäre Aussagen:

$a ? $b : ($c ? $d : ($e ? $f : $g)) 

Nur eine Warnung, sind verschachtelte ternäre Aussagen schwer zu lesen, so dass es zu nicht verschachtelten ternären Aussagen empfohlen.

+7

Ugh, empfehle nie verschachtelte ternäre Anweisungen, die Code so schwer zu lesen machen –

+0

@BrandonWamboldt Es kann es schwer zu lesen machen, aber es ist, was das OP verlangt. – jeroen

+0

@jeroen Ja, aber wie die Antwort unten, ist es gut zu erwähnen, warum es schlecht zu benutzen ist, also denken Leute, die neu im Programmieren sind, nicht, dass es eine gute Übung ist. –

3

Sie können dies Ternary operator sehen. Gut, wenn Sie ein if/else haben, aber schlechte Lesbarkeit, wenn Sie mehr tun.

Alternative syntax. Diese Syntax ist nützlich, wenn Sie html/php im selben Code verwenden. Es hilft uns, das Ende von if/foreach/while zu sehen.

switch/case. Das Beste ist wahrscheinlich, etwas Code zu posten, um zu sehen, ob es gekürzt werden könnte.