Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 20 von 24

Thema: [PHP] Zeilenumbruch!

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    Dankö!

    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    Das ist schließlich der Grund, wieso ' performanter ist, wobei mir selbst durchgeführte Benchmarks dies leider nicht bestätigen konnten .
    Ich bleibe persönlich trotzdem bei ', schon allein aus optischen Gründen .
    Okey, danke dafür.

    In meinem Ferienjob-Geschäft ist ' auch die Richtlinie, und da ich auch nie so "String mit $variable"-Zeug benutze, brauch ich die " eigentlich auch nicht, höchsten für den Umbruch.

  2. #2
    Es geht auch einfach so:
    PHP-Code:
     echo 'Zeile vor dem Umbruch
    Zeile nach dem Umbruch'


  3. #3
    Zitat Zitat von drunken monkey Beitrag anzeigen
    Es geht auch einfach so:
    PHP-Code:
     echo 'Zeile vor dem Umbruch
    Zeile nach dem Umbruch'

    Ist aber im Code nicht so - ästhetisch.^^
    Mag ich nicht so.

  4. #4
    Mal eine Frage, wenn's hier eh grad um Zeilenumbrüche geht.
    Bei mir wird kein Zeilenumbruch erzeugt, wenn ich einen String, der "\n", enthält, per echo ausgebe-, dafür musste ich seit jeher mit <br /> arbeiten. Das hat ja auch soweit seine Richtigkeit, oder nicht? Insofern ist es doch ein wenig sinnfrei, ein "\n" per echo auszugeben? Korrigiert mich bitte, wenn ich da falsch liege. =0

    Und ich persönlich finde Strings in "Gänsefüßchen" hübscher als in 'Anführungszeichen'. ^^

  5. #5
    Das <br /> erzeugt, den Umbruch in der HTML-Ausgabe. Das \n den im Quelltext und auch ein Quelltext sollte schön aussehen .

    Zitat Zitat
    Und ich persönlich finde Strings in "Gänsefüßchen" hübscher als in 'Anführungszeichen'. ^^
    Aber: $array["Bla"] sieht auf jeden Fall einfach nur zum kotzen aus^^.

  6. #6
    Zitat Zitat von Xardas der Dunkle
    Das <br /> erzeugt, den Umbruch in der HTML-Ausgabe. Das \n den im Quelltext und auch ein Quelltext sollte schön aussehen .
    Hm, stimmt auch wieder. Aber mir ist nur wichtig, wie der Code in meinem PHP-Skript aussieht, und da würden mich die Zeilenumbruch-Codes nur stören. xD

    Dass das mit " und ' subjektiv ist, was man schöner findet, ist klar. Ich bin's halt aus anderen Programmiersprachen eher gewöhnt, Strings in Gänsefüßchen zu packen. ^^

    Zitat Zitat von Xardas der Dunkle
    Aber: $array["Bla"] sieht auf jeden Fall einfach nur zum kotzen aus^^.
    Wirklich schön ist das nicht, da hast du recht. Aber assoziative Arrays hab ich bisher erst einmal verwendet (was aber daran liegen kann, dass ich generell nicht viel mit PHP mach).

    Dass ' performancesparender sind als " wusste ich aber bis jetzt noch gar nicht. Man lernt halt nie aus. =)

  7. #7
    Zitat Zitat von The Best Isaac Beitrag anzeigen
    Hm, stimmt auch wieder. Aber mir ist nur wichtig, wie der Code in meinem PHP-Skript aussieht, und da würden mich die Zeilenumbruch-Codes nur stören. xD
    Kein guter Ansatz. Wenn du Schwierigkeiten kriegst, weil dein PHP-Skript an irgendeiner Stelle nicht wohlgeformten Output erzeugt oder weil einfach ein Styesheet nicht das tut, was es tun sollte, dann wirst du dir ordentliche Zeilenumbrüche und Einrückung wünschen.


    Zum Thema "<br>"* vs. "\n": "<br>" verwendest du nur, wenn du HTML ausgibst. PHP muß aber nicht unbedingt HTML ausgeben. Ich habe Shellskripte in PHP geschrieben und verwende in einer Webanwendung ein PHP-Backend, um JSON-Strings zu erzeugen. Luki verwendet PHP als Präprozessor für das Datenformat einer Chemiesoftware (oder hat das mal getan). Da braucht man überall nur "\n".

    Es kommt also immer darauf an, was man erzeugt - und das ist nicht immer HTML.


    * "<br />" ignoriere ich mal, weil XHTML effektiv tot ist.

  8. #8
    Zitat Zitat von Jesus_666 Beitrag anzeigen
    Kein guter Ansatz. Wenn du Schwierigkeiten kriegst, weil dein PHP-Skript an irgendeiner Stelle nicht wohlgeformten Output erzeugt oder weil einfach ein Styesheet nicht das tut, was es tun sollte, dann wirst du dir ordentliche Zeilenumbrüche und Einrückung wünschen.
    Ganz meine Meinung. Und die (Probleme) wird man schon bekommen, wenn man groößere Projekte mal editieren muss!


    Zitat Zitat
    Zum Thema "<br>"* vs. "\n": "<br>" verwendest du nur, wenn du HTML ausgibst. PHP muß aber nicht unbedingt HTML ausgeben. Ich habe Shellskripte in PHP geschrieben und verwende in einer Webanwendung ein PHP-Backend, um JSON-Strings zu erzeugen. Luki verwendet PHP als Präprozessor für das Datenformat einer Chemiesoftware (oder hat das mal getan). Da braucht man überall nur "\n".

    Es kommt also immer darauf an, was man erzeugt - und das ist nicht immer HTML.

    * "<br />" ignoriere ich mal, weil XHTML effektiv tot ist.
    Schon, ich hab aber auch bewusst ins Webentwicklungs-Forum gepostet.

  9. #9
    Zitat Zitat
    * "<br />" ignoriere ich mal, weil XHTML effektiv tot ist.
    Schwachsin! XHTML ist groß im kommen, zumal XHTML im Gegensatz zu HTML auch durch einen XML-Parser laufen kann ...
    Vorallem spuckt PHP selber XHTML aus (siehe die Funktion nl2br)!

    /EDIT: Ich weise auch mal auf den Doctype dieses Forums hin

    Geändert von Xardas der Dunkle (27.08.2008 um 14:47 Uhr)

  10. #10
    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    Schwachsin! XHTML ist groß im kommen, zumal XHTML im Gegensatz zu HTML auch durch einen XML-Parser laufen kann ...
    Dreht man es etwas, erkennt man, dass XHTML von XML- und HTML-Parsern verarbeitet werden kann. Wobei das mit dem XML-Parser auch nicht immer stimmt.

    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    Vorallem spuckt PHP selber XHTML aus (siehe die Funktion nl2br)!
    Aus gerade genanntem Grund.

    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    /EDIT: Ich weise auch mal auf den Doctype dieses Forums hin
    Das ist doch der Beweis, dass dies gerade nicht der Fall ist.

    Aber da XHTML schon mal da ist wirds auch weiterentwickelt, synchron zu HTML.

  11. #11
    Das mit dem Parser war jetzt nicht unbedingt auf den Parser des Browsers bezogen. (Zudem gehe ich von validem XHTML aus, was leider kaum einer umsetzt ).

    Zitat Zitat
    Das ist doch der Beweis, dass dies gerade nicht der Fall ist.
    Habe ich gesagt das es valide ist?, Ich sagte der Doctype ist ein XHTML-Doctype!

    Zitat Zitat
    Aber da XHTML schon mal da ist wirds auch weiterentwickelt, synchron zu HTML.
    Trotzdem ist XHTML einiges sauberer als HTML. Zudem sind beide Versionen die gerade in Planung sind Mist, <h>-Tag, anstatt <h[1-6]> was zu ein scheiß.

  12. #12
    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    Das mit dem Parser war jetzt nicht unbedingt auf den Parser des Browsers bezogen. (Zudem gehe ich von validem XHTML aus, was leider kaum einer umsetzt ).
    Parser ist Parser. Letzteres ist leider wahr.

    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    Habe ich gesagt das es valide ist?, Ich sagte der Doctype ist ein XHTML-Doctype!
    Nein, aber was beweist das schon? Ich meine, es spricht nicht viel gegen XHTML, aber auch nicht viel dafür.

    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    Trotzdem ist XHTML einiges sauberer als HTML. Zudem sind beide Versionen die gerade in Planung sind Mist, <h>-Tag, anstatt <h[1-6]> was zu ein scheiß.
    XHTML ist einfacher auf Fehler zu prüfen, das wars aber auch schon.

    Es ist ja bekannt, dass ich eher zu HTML 5 tendiere, welches du nur angestriffen hast. Ich denke diese Entwicklung geht in die Richtige Richtung und erlaubt das, was XHTML erlaubt auf autorenfreundlicherem Weg (SVG, MathML, Ruby).

    XHTML 2.0 wird momentan nicht wirklich weiterentwickelt, die WG arbeitet an allem anderen, nur nicht daran.

  13. #13
    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    Trotzdem ist XHTML einiges sauberer als HTML. Zudem sind beide Versionen die gerade in Planung sind Mist, <h>-Tag, anstatt <h[1-6]> was zu ein scheiß.
    Ist imho sehr viel logischer. Die Groesse und das Aussehen des letztendlichen Headers sollte mehr oder weniger sowieso von CSS uebernommen werden, da sind die 6 Abstufungen unangebracht, da man durch Klassen viel sinnvollere, je nach Situation, erzeugen kann.

  14. #14
    Zitat Zitat von Crash-Override Beitrag anzeigen
    Ist imho sehr viel logischer. Die Groesse und das Aussehen des letztendlichen Headers sollte mehr oder weniger sowieso von CSS uebernommen werden, da sind die 6 Abstufungen unangebracht, da man durch Klassen viel sinnvollere, je nach Situation, erzeugen kann.
    Geht es bei den <h[1-6]>-Tags nicht eher um die logische Gliederung des Textes als um die gestalterische? Ist doch genauso wie mit dem <cite>-Tag, da wird der Text kursiv dargestellt, obwohl man das ganze, wenn's um das gestalterische geht, genauso gut mit dem <i>-Tag erreichen kann. Aber <cite> kennzeichnet eben ein Zitat (das soll dann z.B. für Sprachbrowser eine Kennung sein, das besonders zu betonen oder was weiß ich).
    So gesehen hätten <h[1-6]> imo durchaus ihre Berechtigung.

  15. #15
    Zitat Zitat von The Best Isaac Beitrag anzeigen
    Geht es bei den <h[1-6]>-Tags nicht eher um die logische Gliederung des Textes als um die gestalterische? Ist doch genauso wie mit dem <cite>-Tag, da wird der Text kursiv dargestellt, obwohl man das ganze, wenn's um das gestalterische geht, genauso gut mit dem <i>-Tag erreichen kann. Aber <cite> kennzeichnet eben ein Zitat (das soll dann z.B. für Sprachbrowser eine Kennung sein, das besonders zu betonen oder was weiß ich).
    Das Problem das XHTML 2.0 damit lösen möchte ist, dass man eben nur 6 Ebenen zur Gliederung zur Verfügung hat, mit <section> und <h> gibt es unendlich viele Untergliederungen.

    HTML 5 definiert dagegen <h[1-6]> zusammen mit den neuen Elementen so um, dass dies auch hier möglich ist. Ein <section> Element gibt es hier ebenfalls, aber auch z.B. <article> usw.

  16. #16
    Zitat Zitat von The Best Isaac Beitrag anzeigen
    Mal eine Frage, wenn's hier eh grad um Zeilenumbrüche geht.
    Bei mir wird kein Zeilenumbruch erzeugt, wenn ich einen String, der "\n", enthält, per echo ausgebe-, dafür musste ich seit jeher mit <br /> arbeiten. Das hat ja auch soweit seine Richtigkeit, oder nicht? Insofern ist es doch ein wenig sinnfrei, ein "\n" per echo auszugeben? Korrigiert mich bitte, wenn ich da falsch liege. =0
    Es macht den HTML Code übersichtlich.
    Wenn man in demselben nachschaun und zb. Stil ändern will, ist das sinnvoll/nötig.
    Die Broswerausgabe beeinflusst das nicht.
    Sinnvoll auch beim Debugging in kompination mit einem <pre>.

    Zitat Zitat
    Und ich persönlich finde Strings in "Gänsefüßchen" hübscher als in 'Anführungszeichen'. ^^
    In erster Linie subjektives empfinden.
    Allerdings werden die einfachen Anführungszeichen vor der Ausgabe nicht nach zu interpretierenden Zeichencodes oder aufzulösenden Variablen durchsucht.
    Theoretisch ein performance Gewinn, bei nicht normalen Anwendungen aber nicht spürbar.
    Da ich aber sowieso Variablen nie direkt in die Strings schreibe, der Übersicht und Korrektheit wegen, empfehlen für mich sowieso die einfachen.
    Und ich würde ganz gerne die Anführungszeichen im HTML Code einheitlich doppelt machen, und natürlich nicht escapen.
    Edit: Irgendjemand hatte noch einen Benchmark Post geschrieben und zurückgezogen:
    PHP Benchmarks gibt's auf The PHP Benchmark. Ein "-String mit war im Vergleich mit einem '-String 689 % langsamer!

    Edit 2: Ich postes mal unten...

    Geändert von Bluescreen (26.08.2008 um 20:01 Uhr) Grund: Benchmark Link added.

  17. #17
    Zu der Performance poste ich nochmal meinen Test, ausgeführt unter Windoof XP (vllt habt ihr ja bessere Ergebnisse [und stört euch net an dem Code xD]):
    PHP-Code:
    Einfache Anführungszeichen: 0.06699562 ms
    Doppelte Anführungszeichen: 0.05292892 ms
    Doppelte Anführungszeichen, parsed: 0.06604195 ms
    HEREDOC: 0.07605553 ms
    HEREDOC parsed: 0.11992455 ms
    sprintf: 0.11992455 ms

    <?php
    header
    ('Content-Type: text/html; charset=utf-8');

    $time microtime(true);
    for(
    $i=0$i<100$i++) {
        
    $b 'Welt';
        
    $a 'Hallo ' $b;
    }
    $t = (microtime(true) - $time);
    echo 
    'Einfache Anführungszeichen: ' sprintf('%0.8f ms'$t 1000) . "<br />\n";

    $time microtime(true);
    for(
    $i=0$i<100$i++) {
        
    $b "Welt";
        
    $a "Hallo " $b;
    }
    $t = (microtime(true) - $time);
    echo 
    'Doppelte Anführungszeichen: ' sprintf('%0.8f ms'$t 1000) . "<br />\n";

    $time microtime(true);
    for(
    $i=0$i<100$i++) {
        
    $b "Welt";
        
    $a "Hallo $b";
    }
    $t = (microtime(true) - $time);
    echo 
    'Doppelte Anführungszeichen, parsed: ' sprintf('%0.8f ms'$t 1000) . "<br />\n";

    $time microtime(true);
    for(
    $i=0$i<100$i++) {
        
    $b =<<<HEREDOC
    Welt
    HEREDOC;
        
    $a = <<<HEREDOC
    Hallo
    HEREDOC
    $b;
    }
    $t = (microtime(true) - $time);
    echo 
    'HEREDOC: ' sprintf('%0.8f ms'$t 1000) . "<br />\n";

    $time microtime(true);
    for(
    $i=0$i<100$i++) {
        
    $b =<<<HEREDOC
    Welt
    HEREDOC;
        
    $a = <<<HEREDOC
    Hallo $b
    HEREDOC
    $b;
    }
    $t = (microtime(true) - $time);
    echo 
    'HEREDOC parsed: ' sprintf('%0.8f ms'$t 1000) . "<br />\n";

    $time microtime(true);
    for(
    $i=0$i<100$i++) {
        
    $a sprintf('Hallo %s''Welt');
    }
    $t = (microtime(true) - $time);
    echo 
    'sprintf: ' sprintf('%0.8f ms'$t 1000) . "<br />\n";

    echo 
    "<br />\n";
    highlight_file(__FILE__);
    /Edit: Ändert man die Durchläufe von 100 auf 8000 wird der unterschied langsam Spürbar!

    Geändert von Xardas der Dunkle (26.08.2008 um 20:02 Uhr)

  18. #18

    PHP Benchmarks

    Zitat Zitat von Xardas der Dunkle Beitrag anzeigen
    Zu der Performance poste ich nochmal meinen Test, ausgeführt unter Windoof XP (vllt habt ihr ja bessere Ergebnisse [und stört euch net an dem Code xD]):
    PHP Benchmarks gibt's auch auf The PHP Benchmark. Ein "-String mit war dort im Vergleich mit einem '-String 689% langsamer!

  19. #19
    o_Ô Wo da?^^
    Also den ich gefunden habe ganz unten auf der Seite, sagt für beides 102-110% also im gründen Bereich.

    /Edit: Meinst du vllt, print vs. echo?^^

    Geändert von Xardas der Dunkle (26.08.2008 um 20:31 Uhr)

  20. #20
    Zitat Zitat von Bluescreen Beitrag anzeigen
    PHP Benchmarks gibt's auch auf The PHP Benchmark. Ein "-String mit war dort im Vergleich mit einem '-String 689% langsamer!
    Entweder hast du dich verlesen oder deine 689% waren von einem älteren Test. Auf der verlinkten Seite finde ich auch nur die Werte, die Xardas genannt hat.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •