echo ausgabe, Welche schreibweise ?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Wie gesagt, die verschiedenen Methoden tun sich gegenseitig nicht viel.
    Aber was tun sie sich den ?

    Gibt es da unterschiede oder doch keine?

    Kommentar


    • #17
      keines der beispiele ist korrekt.
      die effizienteste methode wäre tatsächlich ständig zwischen php und html modus zu wechseln. das lässt sich irgendwo auf zend.com zum thema code effizienz auch nachlesen.

      allerdings wird der code ziemlich unleserlich, wenn man ständig zwischen php und html modus wechselt (meine meinung).

      die fünf genannten beispiele sind deshalb falsch, da php alles was zwischen " " steht versucht zu parsen.
      da hier aber nur html code vorhanden ist, ist der versuch natürlich vergeblich und reine zeitverschwendung.
      deshalb wäre es richtig es so zu schreiben:

      PHP-Code:
      echo '<table width="500" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td>&nbsp;</td>
          <td>&nbsp;</td>
        </tr>
        <tr>
          <td>&nbsp;</td>
          <td>&nbsp;</td>
        </tr>
      </table>'

      zwischen einfachen anführungszeichen ' ' wird nichts geparst, das wird nun direkt ausgegeben.
      absoluter horror ist das zweite beispiel.

      PHP-Code:
      echo "<table width=\"500\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n";
      echo 
      "<tr>\n";
      echo 
      "<td>&nbsp;</td>\n";
      echo 
      "<td>&nbsp;</td>\n";
      echo 
      "</tr>\n";
      echo 
      "<tr>\n";
      echo 
      "<td>&nbsp;</td>\n";
      echo 
      "<td>&nbsp;</td>\n";
      echo 
      "</tr>\n";
      echo 
      "</table>\n"
      erstmal wieder das " " wo man ' ' verwenden sollte, dann das unsinnige ausgeben per echo jeder einzelnen zeile und dann den ganzen kram auch noch *escapen*. -> HORROR!

      es ist völlig ok anstatt:
      <table width="500" border="0" ....

      einfach

      <table width='500' border='0'

      zu schreiben - und nicht

      <table width=\"500\" border=\"0\"

      nach den html spezifikationen ist das korrekt.
      martin

      Kommentar


      • #18
        Ups. Dann sollte ich mich wohl schleunigst umstellen...

        Wobei... inzwischen trenne ich eh immer grundsätzlich zwischen HTML und PHP und verwende sogut wie immer Template-Techniken. Es sei denn ich muss halt aus 'ner DB Daten rauslesen um z.B. Tabellen zu füllen. Ich hab dann allerdings immer die Anführungszeichen escaped. Und das werde ich dann wohl in Zukunft besser lassen...

        Ich finde den Code übrigens SEHR viel übersichtlicher, wenn man in PHP-Scripten auch nur PHP verwendet und alles was reiner HTML-Code ist aus Templates kommt. Früher habe ich auch immer zwischen PHP und HTML hin und her gewechselt aber wenn man dann grössere Scripte hat, wird man irgendwann voll bekloppt weil man gar nicht mehr rafft was da jetzt wohl abgeht...

        Gruss

        Yezariel
        mens agitat molem

        Kommentar


        • #19
          Stimmt, vom Parser her ist es wirklich gesünder, die Tags auf und zu zu machen. Aber ich find das in einem durchlauf trotzdem besser. Ich mein, wenn man sieht, wie umständlich einige Programmieren, dann macht das wohl kaum was aus.

          Aber mal anders gesehen.

          Der Interpreter ließt ja trotzdem die ganze Datei. Und hört ja nicht beim ?> auf. Von daher sollte die Differenz der benötigten Rechenleistung doch noch geringer sein. Vielleicht tut sich da was beim RAM, weil das echo ja nicht nach jedem Zeichen ausgegeben wird.

          Kommentar

          Lädt...
          X