Warum enthalten Vorlagen so viele PHP-Tag-Paare?


7

Ich habe einige PHP-Erfahrung, aber kaum Erfahrung beim Schreiben von WP-Themen ... Ich beginne gerade die Reise.

Alle Themen, die ich mir bisher im .org-Repository angesehen habe, haben folgenden Code:

<?php if (condition) { ?>
..some html
<?php } else { ?>
..some other html
<?php } ?>

anstatt:

<?php
if (condition) {
  echo ..some html
}
else {
  echo ..some other html
}
?>

Ich kann sehen, dass wir bei Verwendung eines Editors wie Notepad ++ lieber den HTML-Code "nackt" und nicht in einer Echo-Anweisung haben, um dem Editor die Möglichkeit zu geben, HTML-Tags farblich zu kennzeichnen und mit ihren End-Tags usw. abzugleichen.

Aber ich sehe viele Vorlagen, die eine TONNE PHP-Code und sehr wenig HTML enthalten - und sie wickeln immer noch PHP-Tags um jede Codezeile. Für mich ist das schwer zu lesen.

Gibt es dafür einen technischen Grund oder nur eine Präferenz des Entwicklers?


3
Gute Frage - wie wäre es, wenn die Leute nicht wirklich verstehen, was sie tun?
SimonT

Aus diesem Grund gibt es auf Jobseiten Angebote wie "WordPress Developer" und "PHP Developer", das zweite von Unternehmen, die gute Qualität wollen, das erste von Unternehmen, die keinen fairen Lohn zahlen würden und sich nicht darum kümmern, was im Code enthalten ist solange "sie liefern rechtzeitig" ... Tut mir leid, wenn jemand beleidigt wäre, aber es ist die grausame Wahrheit.
Gabb3

Antworten:


7

Wie immer kopieren die Leute alles, was sie gelernt haben, und IIRC. Der erste Stil ist der Codierungsstil des WordPress-Kerns.

Wie Sie selbst sagten, ist es bei einem großen Block generierten HTML-Codes einfacher, Tags unter dem ersten Stil zu betrachten (und zu balancieren), aber pragmatische Leute verwenden den zweiten, wenn dies nicht der Fall ist.

Es ist wirklich nur Codierungsstilpräferenz, nichts Technisches dahinter.


1

Obwohl Sie vielleicht argumentieren, dass der Code schwieriger zu lesen ist, wenn Sie häufiger in den PHP-Modus wechseln oder ihn verlassen, ist es in PHP auch eine gute und allgemein empfohlene Vorgehensweise , Ausgabestile nicht zu mischen.

Das heißt, Sie geben entweder HTML aus dem HTML-Modus aus oder Sie geben HTML aus echoAnweisungen aus… aber Sie mischen keine Stile. Das würde einen Wartungsalptraum schaffen.

Die Autoren der Vorlagen, die Sie lesen, befolgen diese bewährte Methode.

Letztendlich handelt es sich jedoch nur um ein Stil- / Verwaltungsproblem: Nichts in der Sprache erfordert dies von Natur aus.

Ein vernünftiges Template - System erlauben würde , nicht inline PHP überhaupt , sondern nur deklarative Erweiterungen des HTML - Markup ermöglicht, aber das ist ein andere Geschichte ...

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.