echo $begrüßung;
Weder eine Datenbank noch Flatfiles haben das Bedürfnis nach HTML-spezifischen Dingen.
Es gibt flatfiles im xml Format.
Flatfiles sind üblicherweise Plaintext-Files und eine XML-Datei wird auch so bezeichnet. Flach ist eine XML-Struktur im Allgemeinen nicht. Außerdem hat ein <br> alleinstehend auch nichts in einem XML-Datei zu suchen.
Das ist aber das Resultat deiner Forderung.
Was habe ich denn anderes gefordert, als eine HTML-Behandlung für einen Nicht-HTML-Kontext wegzulassen?
Was machst du jetzt, wenn es nichts darin zu suchen hat?
Ich kodiere es kontextgerecht.
Konversion Input -> Data
Für welchen konkreten Kontext machst du dir eigentlich diese Mühe?
Konversion Data --> HTML OUT
Für einen irgendwann vielleicht mal später verwendeten? Warum willst du nicht alles zu seiner Zeit machen? Nur dann weißt du, was du konkret brauchst.
Das ist es, was mein Programm derzeit kann.
Ich ziehe es vor, dass ich \n in meinem Flatfile ausschliesslich als Record-Separator akzeptiere, ansonsten maskiere.
Aha, dein Kontext ist also keine Datenbank wie beim OP sondern eine Textdatei, die Zeilenumbrüche als Satztrenner verwendet. Du könntest es dir einfacher machen, wenn du Zeilenumbrüche als \n und \ als \ notierst, zur Not noch das \r berücksichtigst. Das wäre meiner Meinung nach dem Kontext angemessen. Das bleibt dann auch halbwegs lesbarer als HTML-Entitys.
Der Hintergedanke ist: Performance in Abfragen durch vereinfachte Iterationen.
Den Satz kann ich wahrscheinlich erst bewerten, wenn ich dein Programm dazu sähe. (Musst du jetzt nicht unbedingt veröffentlichen.)
Der Hauptzweck der Anwendung ist HTML Output. Wäre der Zweck ein generell anderer, so würde ich wahrscheinlich meine Methode überdenken müssen.
Und wenn der Zweck sowohl als auch ist, bzw. sich nachher herausstellt, dass noch ein Anwendungsfall für deine Daten dazukommt?
Letzten Endes musst du es sowieso machen, wie du es für richtig hältst. Man lernt ja am besten aus den Fehlern, die man selbst begangen hat. :-)
echo "$verabschiedung $name";