Gegeben sei der HTML-Code, der von meiner Anwendung generiert wurde.
%Vor%Wenn ich ein weiteres Container-DIV hinzufüge, erzeugt dies keinen korrekt eingerückten Code.
Gibt es irgendeine Lösung für die Funktion, um irgendwie zu wissen, wieviele \ t 's oder Leerzeichen hinzugefügt werden sollen, oder irgendwie automatisch das HTML einrücken soll?
Erstaunliche Frage.
9 Antworten und 3 Kommentare bisher, und es sieht so aus, als ob niemand den Fragenkörper gelesen hätte, sondern nur einige Gospels wiederholt, ausgelöst durch ein Schlüsselwort im Titel - eine höchst bevorzugte Art, Fragen auf der gesegneten Seite von stackoverflow zu beantworten.
Aber die Frage ist nicht so einfach / einlagig.
Ich muss zugeben, es ist selbst mehrdeutig. Also müssen wir es ausgraben.
1) Wie können Sie Ihren HTML-Code einrücken?
Benutze Vorlagen, Alter. Verwenden Sie Vorlagen. Die einzige Antwort.
2) Gibt es eine Lösung für die Funktion, irgendwie zu wissen, wie viele \ t 's oder Leerzeichen hinzuzufügen oder irgendwie automatisch den HTML-Einzug?
Natürlich gibt es keine .
PHP weiß nichts von HTML, Einzügen und so weiter.
Vor allem, wenn noch kein HTML fertig ist (!)
3) Wenn ich ein weiteres Container-DIV hinzufüge, erzeugt dies keinen korrekt eingerückten Code.
Die Schlüssel Frage der Frage.
Die Frage, um der die Frage gebeten wurde.
Aber am härtesten von allen.
Und die Antwort ist eine Art von denen ich totale Meinungsverschiedenheiten gezeigt habe, hehe:
Obwohl die relative Reihenfolge der Tags wichtig ist, ist es für das resultierende große HTML möglich, einige Blöcke aus der Reihe zu entfernen:
Es wird Ihnen die richtige Einrückung in den bedeutungsvollen Blöcken geben, aber behalten Sie den Haupt-HTML in Ordnung.
Als Nebeneffekt hält es Ihre Zeilen auf dem Bildschirm:)
Um eine gute Einrückung in Sub-Templates zu gewährleisten, würde ich sehr empfehlen, PHP-basierte Templates zu verwenden. Nicht hässlich HEREDOC um Himmels willen!
Hier ist nur eine Regel, die man bei PHP-Templates beachten sollte:
hält PHP-Blöcke immer auf der linken Seite. Das ist alles.
Um die Einrückung zwischen PHP-verschachtelten Blöcken beizubehalten, setzen Sie sie einfach in <? ?>
Beispiel:
%Vor%Dadurch wird korrekt eingerückter HTML-Code erzeugt, wobei die Reihenfolge von HTML und PHP in der Vorlage beibehalten wird. Dies erleichtert Entwicklern die Entwicklung sowohl bei der Entwicklung als auch beim Debugging .
Hören Sie niemandem zu, der sagt "Sie müssen Ihren Code nicht einrücken!". Sie sind nur Hobbyisten, nicht die wirklichen Entwickler. Jeder, der eine Vorstellung davon hat, was debuggen ist, wer Schwierigkeiten hatte, seinen Code zu debuggen, würde Ihnen sagen, dass der richtige Einzug wichtig ist.
Die Antwort könnte seltsam klingen, aber Sie sollten sich keine Gedanken über den Einzug des generierten Codes machen. Die Einrückung dient der Lesbarkeit und sollte nur auf der Seite des Programmierers und nicht auf dem generierten Teil (was für Browser gilt) erfolgen.
Ich stimme allen Kommentaren zu, aber wenn Sie einen Fall haben, in dem dies sinnvoll ist, können Sie Ihren HTML-Code über HTML Tidy pipen (oder in Ihrem Fall PHP Tidy ) mit der Option indent
.
Die meisten Editoren verfügen über eine Formatierungsfunktion, mit der Sie den Einzug korrigieren können. In Visual Studio zum Beispiel können Sie Strg + K + D drücken, um Ihren HTML-Code schön zu formatieren.
Normalerweise mache ich so etwas, wenn es eine kompliziertere HTML-Struktur ist. Dies macht es einfacher zu folgen, wenn Sie mich fragen, und Sie können auch Ihren HTML-Code normal schreiben, anstatt sich Gedanken über das Aussteigen von Anführungszeichen und dergleichen zu machen.
Da Sie sich bei der Verarbeitung von HTML nicht in einem PHP-Block befinden, wird er so eingerückt ausgegeben, wie Sie ihn erstellt haben.
%Vor%Ich bin auch ein Verfechter für wohlgeformten Code. Viele Leute hier sagten "Firebug wird Ihren Code für Sie einrücken". Nun, was ist, wenn das an den Browser gelieferte Markup durch JavaScript verändert oder in das DOM eingefügt wird? Dann zeigt Firebug den aktuellen Status an, nicht das, was Sie vom Server geladen haben.
Ich mag auch, dass mein HTML in meinem Skript sichtbar und lesbar ist. In der Regel mache ich so etwas, indem ich die Einrückung von PHP und HTML getrennt beobachte (es ist nicht möglich, den Cursor auf ein öffnendes Tag oder {
zu setzen und nur die Seite nach unten zu scrollen, bis du das schließende Tag oder }
findest passend zu Ihrer Cursor Position.
Dies gibt genau so aus,
%Vor%Beachten Sie, dass es so aussieht, wie es sollte und wie im Skript (das macht das Debuggen für mich einfach). Ich verwende einfache Anführungszeichen mit HTML, so dass ich nicht einer Billion Anführungszeichen entgehen muss (dies macht die Verkettung von Strings etwas manueller, aber es ist weniger Arbeit als all diese Backslashes, die auch die Lesbarkeit innerhalb des Skripts behindern).
Noch einmal, dies ist nur, wie ich Dinge mache und möglicherweise nicht der ideale Weg, HTML zu formatieren. Ich mag es einfach, meinen HTML-Code nett und ordentlich zu haben, auch wenn er mit PHP
gemischt istDie Antwort ist, Vorlagen verwenden .
Wenn Sie Ihre Logik richtig von Ihrer Präsentation trennen, verschwindet diese Frage. Ihre Vorlagen haben alle Einrückungen oder fehlende Einrückungen, die Sie benötigen oder benötigen.
BEARBEITEN
Nichtsdestotrotz können Sie Ihren Code ziemlich einfach ändern:
%Vor%Alternativ können Sie auch den gewünschten Einzug eingeben:
%Vor% Bearbeiten: brach den Code in Seiten.
Dieser Code funktioniert wirklich nur mit einem Vorlagensystem.
Was kann nur ein Grund sein:
Möglicherweise müssen Sie etwas ändern, wenn Sie Tabulatoren anstelle von Leerzeichen verwenden möchten.
Ich benutze Leerzeichen, da es mehr Browser / Anwendung ist.
Tags und Links html php indentation