Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.php > #5011
| From | Arno Welzel <usenet@arnowelzel.de> |
|---|---|
| Newsgroups | de.comp.lang.php |
| Subject | Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern |
| Date | 2025-12-15 12:23 +0100 |
| Organization | A noiseless patient Spider |
| Message-ID | <10hor2n$1rm0v$1@dont-email.me> (permalink) |
| References | (8 earlier) <re4vzdpu91ji.dlg@borumat.de> <10h43qc$3gdng$1@dont-email.me> <pdaqork8zz9j.dlg@borumat.de> <3t6935d6a3i3ebed8n3e8%sfroehli@Froehlich.Priv.at> <tzd3d720hq1r$.dlg@borumat.de> |
Andreas Borutta, 2025-12-07 21:55:
> Stefan Froehlich:
[...]
>> Naja, es sind doch eh nur drei Befehle: Daten einlesen, Daten
>> verarbeiten, Daten ausgeben:
>>
>> | $tidy->parseString($html, $config, 'utf8');
>> | $tidy->cleanRepair();
>> | return (string) $tidy;
>>
>> Der ganze Rest drumherum ist Initialisierung, Prüfung und
>> Fehlerverarbeitung. Fast alles davon könntest Du theoretisch auch
>> weglassen, aber wenn dann irgendetwas nicht nach Plan läuft, fliegt
>> Dir das Programm um die Ohren - das ist kein Gewinn.
>
> Sollte denn die Aufgaben Initialisierung, Prüfung und
> Fehlerverarbeitung nicht Bestandteil jeder Erweiterung oder des
> aufrufenden Moduls sein.
>
> Mir leuchtet bisher eine Architektur nicht ein, wo der jeder Anwender
> einer Erweiterung "das Rad neu erfindet" - nur um die Erweiterung
> aufzurufen.
Kirby bietet offensichtlich Möglichkeit an, eine "Template"-Klasse zu
erstellen, die dann zusätzliche Dinge machen, wie z.B. bei der Ausgabe
des Dokuments vorher noch Dinge mit dem Inhalt zu machen.
Dazu ist der vermutlich vorgesehene Minimalcode:
class TidyTemplate extends Template
{
public function render(array $data = []): string
{
$html = parent::render($data);
return $html;
}
}
Warum ist das so? Weil $data eben kein HTML ist, sondern die Daten, die
Kirby hat, um daraus dann HTML zu generieren. Und ja, das ist sicher
sinnvoll, da ein Template u.U. eben nicht nur HTML verarbeiten soll,
sondern auch die zugrundeliegenden Daten kenne soll, die für das HTML
verwendet werden sollen.
Und von Dir kamen jetzt eben noch ein paar Dinge dazu, um auch Tidy zu
verwenden. Du kannst Dir die Prüfung auf "existiert Tidy überhaupt" etc.
natürlich auch sparen, da Du ja selber weißt, wo deine eigene
Template-Implementierung laufen soll und Du da auch sicherstellen
kannst, dass die Tidy-Erweiterung in PHP eingerichtet wurde:
class TidyTemplate extends Template
{
public function render(array $data = []): string
{
$html = parent::render($data);
$tidy = new tidy();
$tidy->parseString($html, $config, 'utf8');
$tidy->cleanRepair();
return (string) $tidy;
}
}
Und dass Tidy selbst so benutzt wird, ist halt so - so funktioniert Tidy
halt, dass es nicht nur einen simplen Funktionsaufruf hat, der dann das
bereinigte HTML zurückliefert. Für PHP wurde das nicht extra so
entwickelt, sondern PHP nutzt halt hier die Tidy-Bibliothek, wie sie
angeboten wird.
Viele Werkzeue sind halt so, dass sie unterschiedliche Funktionen bieten
und man muss sie eben so anwenden, wie sie für den eigenen Zweck am
besten funktionieren.
--
Arno Welzel
https://arnowelzel.de
Back to de.comp.lang.php | Previous — Previous in thread | Next in thread | Find similar
"Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-04 00:36 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-11-04 07:57 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-04 09:17 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Claus Reibenstein <creibens@gmail.com> - 2025-11-04 11:33 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-11-04 11:26 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-04 20:36 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-19 20:17 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-19 21:24 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-20 01:16 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-21 17:59 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Markus Heinz <markus.heinz@uni-dortmund.de> - 2025-11-22 01:12 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-26 14:21 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-27 08:42 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-28 09:35 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Arno Welzel <usenet@arnowelzel.de> - 2025-11-28 10:51 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-12-04 14:21 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Arno Welzel <usenet@arnowelzel.de> - 2025-12-07 15:43 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-12-07 20:09 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-12-07 19:36 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-12-07 21:55 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-12-08 09:07 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-12-11 14:07 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-12-11 18:45 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Arno Welzel <usenet@arnowelzel.de> - 2025-12-15 12:23 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-08 07:20 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-11-08 10:05 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-08 18:10 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-11-08 19:50 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Arno Welzel <usenet@arnowelzel.de> - 2025-11-10 01:58 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-10 09:52 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Andreas Borutta <borumat@gmx.de> - 2025-11-10 09:53 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-11-10 09:20 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Arno Welzel <usenet@arnowelzel.de> - 2025-11-10 11:12 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-11-10 11:09 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Arno Welzel <usenet@arnowelzel.de> - 2025-11-10 17:51 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-11-11 08:09 +0000
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Arno Welzel <usenet@arnowelzel.de> - 2025-11-11 10:16 +0100
Re: "Prettify" (Umbrüche, Leerzeichen) vor dem Ausliefern Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2025-11-11 10:03 +0000
csiph-web