Ich mische HTML & amp; CSS mit PHP-Variablen, so dass ich viele Einstellungen mit nur einer Konfigurationsdatei verwalten kann. Das funktioniert alles gut, aber ich versuche jetzt das CSS zusammenzuführen und zu verkleinern. Und das verursacht ein Problem.
Die Variablen werden nicht in das komprimierte Blatt zurückgegeben, da das PHP-Skript nicht ausgeführt wird. Und das, weil file_get_contents () den Inhalt in eine Zeichenfolge konvertiert.
Ist es in irgendeiner Weise möglich, die Dateien zuerst auszuführen und dann deren Inhalt zu erfassen? Oder greifen Sie ihre Inhalte auf andere Weise auf, so dass sie immer noch ausgeführt werden?
config.php
%Vor%base-stylesheet.php
%Vor%spezifische-stylesheet.php
%Vor%minified-stylesheets.php
%Vor%index.php
%Vor% Sie kennen die Methode ob_start()
bereits.
Aber ich werde eine bessere Alternative (und schneller) zeigen:
Ihre Hauptdatei:
%Vor% Nun, nicht viel hier. Habe gerade ein include()
dort hinzugefügt ...
Aber es funktioniert nicht wie beabsichtigt, es sei denn, Sie mögen das für jede Datei:
Verwenden Sie das Basis-Stylesheet als Beispiel:
%Vor%* Ignoriere die fehlerhafte Syntax highlight
Und du bist fertig.
Nicht mehr böse ob_start()
!!!
Außerdem verwenden CSS-Kommentare die /* */
-Syntax, //
wird als ungültiger CSS-Selektor ausgewertet.
Ich denke, was Sie tun müssen, ist die Datei in einen PHP-Puffer einzuschließen und dann den Puffer zu minimieren
%Vor% file_get_contents()
liest buchstäblich den Inhalt einer Datei und legt den Inhalt ab in eine Zeichenfolge. Was Sie verwenden müssen, ist include()
. Dies analysiert den Inhalt der Datei.