Was ist das für ein String?

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von balufreak, 02.01.2005.

  1. balufreak

    balufreak Thread Starter MacUser Mitglied

    Beiträge:
    1.560
    Zustimmungen:
    28
    Registriert seit:
    12.10.2003
    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
     
  2. Thommy

    Thommy MacUser Mitglied

    Beiträge:
    1.833
    Zustimmungen:
    0
    Registriert seit:
    23.06.2003
    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.
     
  3. balufreak

    balufreak Thread Starter MacUser Mitglied

    Beiträge:
    1.560
    Zustimmungen:
    28
    Registriert seit:
    12.10.2003
    sowas habe ich mir fast vorgestellt. Konnte es nur nicht richtig verstehen. Aber jetzt! Danke vielmals
     
  4. WoSoft

    WoSoft MacUser Mitglied

    Beiträge:
    261
    Zustimmungen:
    0
    Registriert seit:
    24.08.2004
    gibt es auch in C. Heißt übrigens Bedingungsoperator.
     
  5. Faser

    Faser MacUser Mitglied

    Beiträge:
    1.012
    Zustimmungen:
    0
    Registriert seit:
    20.08.2003
    Ü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.
     
  6. Azathoth

    Azathoth MacUser Mitglied

    Beiträge:
    475
    Zustimmungen:
    9
    Registriert seit:
    20.09.2004
    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
     
  7. WoSoft

    WoSoft MacUser Mitglied

    Beiträge:
    261
    Zustimmungen:
    0
    Registriert seit:
    24.08.2004
    und wozu brauchst du die geschweiften Klammern? :D
     
  8. Faser

    Faser MacUser Mitglied

    Beiträge:
    1.012
    Zustimmungen:
    0
    Registriert seit:
    20.08.2003
    Das ist
    a) eleganter
    b) übersichtlicher
    c) nötig, wenn mehrere IF-Möglichkeiten vorhanden sind
     
  9. Azathoth

    Azathoth MacUser Mitglied

    Beiträge:
    475
    Zustimmungen:
    9
    Registriert seit:
    20.09.2004
    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 :)
     
  10. oglimmer

    oglimmer MacUser Mitglied

    Beiträge:
    1.124
    Zustimmungen:
    79
    Registriert seit:
    16.11.2004
    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".)
     
Die Seite wird geladen...

Diese Seite empfehlen