Was ist das für ein String?

balufreak

balufreak

Aktives Mitglied
Thread Starter
Dabei seit
12.10.2003
Beiträge
1.563
Reaktionspunkte
28
PHP:
$tname = $ext!='' ? $tpl.'.'.$ext : $tpl;

Hallo Leute! Ich wollte wissen was dieser String zu bedeuten hat. Kann mir das jemand erklären?

Greets balu
 
hmm also ich kenn es nur aus JAVA. Anscheinend gibt es das auch in PHP :)
Das ist quasi eine andere seltene Schreibweise für If/Else.

Also die Zeile bedeutet soviel:

wenn $ext!='' dann $tpl.'.'.$ext ansonsten $tpl
also:

$var = Bedingung ? dannDas : ElseFall

entweder wird "dannDas" oder "ElseFall" in $var geschrieben, je nachdem ob die Bedingung false oder true ist.
 
sowas habe ich mir fast vorgestellt. Konnte es nur nicht richtig verstehen. Aber jetzt! Danke vielmals
 
gibt es auch in C. Heißt übrigens Bedingungsoperator.
 
Übrigens viel einfacher zu verstehen, wenn man Klammern setzt:
Code:
$tname = ( ( $ext != '' ) ? ( $tpl . '.' . $ext ) : ( $t ) );
Ist das jetzt so richtig? Irgendwas hab ich grad vercheckt, glaub ich.
 
sollte so passen @ faser

ich versuche das mal in die 'gängige' schreibweise zu übersetzen.


PHP:
if ($ext != ' ') {
   $tname = $tpl . '.'  . $ext;
}
else {
   $tname = $tpl;
}

also auf "deutsch" wenn ext nicht leer ist wird ext an tpl angehängt, sonst nicht :D
 
und wozu brauchst du die geschweiften Klammern? :D
 
Das ist
a) eleganter
b) übersichtlicher
c) nötig, wenn mehrere IF-Möglichkeiten vorhanden sind
 
ich dachte schon dass die frage nach den klammern kommt ;)
um ehrlich zu sein hab ich sie hingemacht um das ganze übersichtlicher und verständlicher zu machen.

wenn ichs eher klein und performant haben will nehm ich gleich die möglichkeit, die nur eine zeile umfasst :)
 
Ist zwar etwas offtopic, aber ich bin der Meinung, dass man immer Klammern bei if, for, while verwenden sollte.

Problem ist nämlich, dass wenn man den Code mal ändert, und eine weitere Anweisung reinschreibt, man vergessen könnte jetzt die Klammern zu setzen.

(Ist natürlich nur eine Meinung, aber 10 Jahre Software-Entwicklung geben einem so manche "Best-Practice" Regel an die Hand, auch wenn jetzt der eine oder andere sagt "so'n quatsch, ich habe die Klammern beim Ändern noch nie vergessen".)
 
Sehe ich genauso wie oglimmer. Die 4 Byte mehr oder weniger machen's doch dann wirklich nicht...
 
Zurück
Oben Unten