2016-06-21 19 views
0

Sagen wir, ich hatte zum Beispiel:Wird die Minimierung des HTML-Anteils einer PHP-Datei Auswirkungen auf die Leistung und die Bandbreite haben?

<body> 
    <h1>Title</h1> 
    <article> 
     <h2>Article</h2> 
     <p>Here's a list of some stuff</p> 
     <ul> 
     <?php 
      foreach ($examples as $example) { 
       echo "<li>" . $example . "</li>"; 
      } 
     ?> 
     </ul> 
    </article> 
</body> 

Ich weiß minifying eine solche Datei möglich ist, aber meine Frage hat mehr damit zu tun, ob es ist zu tun wert.

Würde der HTML-Teil einer solchen Datei den Performance-Unterschied verringern? Und wenn es so wäre, würde es das immer noch tun, wenn es durch require('file.php') statt eines Browsers verwendet würde, der nach file.php fragt?

Und würden sich diese Leistungsunterschiede nur auf die Verarbeitungszeit des Interpreters auswirken, oder würden sie sich auch auf die Menge der Daten auswirken, die letztendlich an den Browser gesendet werden?

+1

http://stackoverflow.com/questions/4079920/is-there-a-point-to-minifying-php?rq=1 – j08691

+0

@ j08691 Bezieht sich die Antwort auf diese Frage auf die gesamte PHP-Datei einschließlich des HTML-Codes außerhalb der '', oder nur auf den PHP-Code selbst? – Cat

+0

außer dem Entfernen von Zeilenumbrüchen und etwas Einrückung, gibt es sehr wenig über HTML, das minimiert werden kann. es ist keine Programmiersprache, also kann man einen '' Tag nicht auf' 'verkleinern - jetzt ist es kursiv, kein Bild mehr. –

Antwort

0

Ja, es hat Auswirkungen auf die Bandbreite. In der Regel wird das Minimieren/Verändern mit JavaScript-Code und CSS-Stilen durchgeführt, da es dort große Auswirkungen hat. Es gibt einen großen Mehraufwand, wenn z.B. Eine Bibliothek wird nicht verkleinert. Mit HTML hat es offensichtlich die gleiche Wirkung auf die Bandbreite, aber in einem viel niedrigeren Bereich. Ihr HTML-Snippet kann zum Beispiel verkleinert werden und 119 Bytes können gespeichert werden (ASCII). Das sind 39%, aber mit einem sehr niedrigen absoluten Wert von 119 Bytes.

Daher würde ich vorschlagen, nur Ihr Markup zu minimieren, wenn Sie einen ungewöhnlich großen Teil von HTML haben oder wenn Sie HTML-Vorlagen verwenden. Mit HTML-Templates ist es sehr einfach, es zu minimieren, aber wenn Sie Ihr HTML-Markup mit PHP echo Zeile für Zeile ausgeben, müssten Sie die Verkleinerung manuell vornehmen.

Stellen Sie sicher, dass auch gzip aktiviert ist. Mit gzip compression sparen Sie viel mehr, als indem Sie den HTML-Code minimieren. Sie können es z.B. mit diesem Befehl (vor der ersten Ausgabezeile).

<?php ob_start("ob_gzhandler"); ?> 
+0

Nur zur Klarstellung, bei HTML-Templates beziehen Sie sich auf eine reine oder fast reine HTML-Datei, die ich 'include()' oder 'require()', sowie HTML, das nicht durch 'echo' hinzugefügt wird, richtig? – Cat

+0

Ja, mit PHP können Sie 'include()' oder 'require()' verwenden, andere Sprachen oder Frameworks haben eine eingebaute Template-Engine. Z.B. in Angular.js z.B. Sie können HTML-Dateien minimieren und sie an den Routing-Controller übergeben, der seine Template-Engine verwendet, um sie zu rendern –

1

Wenn Ihr HTML innerhalb des PHP-Skript ist, und du bist minifying den PHP-Skript, können Sie davon ausgehen, dass der HTML auch damit minimieren entlang wird. Aber das hängt davon ab, wie Ihr Minifier funktioniert.

Siehe this question zum Reduzieren von HTML. Es scheint die Antwort ist keine, es hat keinen Einfluss auf die Leistung Ihre Zeit wert.