Hallo zusammen,
ich möchte in einem HTML String mittels PHP die Zeilenumbrüche mit <br> ersetzen
und daraus soll folgendes werden:
hab es mal mit folgendem probiert komm aber nicht weiter
er beachtet die <p> mit zwei Umbrüchen nicht, folgendes ist mein momentanes Ergebnis
Mir ist klar das meine Filtereinstellungen so nur einen Zeilenumbruch beachten, weiß aber nicht wie ich es ändern soll damit es korrekt funktioniert.
Hab mich dann durch diverse Foren gesucht/gekämpft dabei ist folgendes herausgekommen:
Hier wird das <br> Tag nicht verarbeitet sonder im Browser als Text ausgegeben und Sonderzeichen und Umlaute kommen kryptisch (ü wird als ü ausgegeben)
Könnte einen Denkanstoß gebrauchen.
Danke schon mal im Voraus für eure Hilfe
VG HimDa
ich möchte in einem HTML String mittels PHP die Zeilenumbrüche mit <br> ersetzen
HTML-Code:
<h1>Testüberschrift1</h1> <p>Text text </p><p class='test'>anfang ende</p> <h1>Testüberschrift2</h1> <p>anfang mitte ende</p>
HTML-Code:
<h1>Testüberschrift1</h1> <p>Text text<br></p> <p class='test'>anfang<br>ende</p> <h1>Testüberschrift2</h1> <p>anfang<br>mitte<br>ende</p>
PHP-Code:
preg_replace('/(<p[^>][I]>)(.[/I])(\n)(.*)(</p>)/', '\1\2<br>\4\5', $html_string);
HTML-Code:
<h1>Testüberschrift1</h1> <p>Text text<br></p> <p class='test'>anfang<br>ende</p> <h1>Testüberschrift2</h1> <p>anfang mitte ende</p>
Hab mich dann durch diverse Foren gesucht/gekämpft dabei ist folgendes herausgekommen:
PHP-Code:
$text_roh = '
<h1>Testüberschrift1</h1>
<p>Text text
</p><p class='test'>anfang
ende</p>
<h1>Testüberschrift2</h1>
<p>anfang
mitte
ende</p>
';
// Umbrüche vereinheitlichen
$text_roh = str_replace(["\r\n", "\r"], "\n", $text_roh);
$dom = new DOMDocument;
$dom->loadHTML($text_roh);
$nodes = $dom->getElementsByTagName('p');
foreach ($nodes as $node) {
$new_text = new DOMText(str_replace("\n", "<br>", $node->textContent));
$node->removeChild($node->firstChild);
$node->appendChild($new_text);
}
echo $dom->saveHTML();
Könnte einen Denkanstoß gebrauchen.
Danke schon mal im Voraus für eure Hilfe
VG HimDa
Kommentar