Thread HTML::Parser - Attribute von HTML ändern, welche sich nicht(!) unterhalb <pre> oder <code> befinden
(21 answers)
Opened by GwenDragon at 2023-01-30 18:12 2023-01-30T17:12:57 GwenDragon Um das zu beheben, musst Du Deinem Parser eine weitere Konfiguration verpassen: Code (perl): (dl
)
$p->xml_pic( 1 ); Der Grund: Per default beendet der HTML::Parser "Processing instructions" (PIs) mit der SGML-Syntax, das heißt, mit einem einfachen '>'. Wenn also Dein PHP-Schnipsel, wie im obigen Beispiel, HTML-Tags enthält, dann hört für den Parser die PI nach dem ersten Tag auf und danach wird wieder HTML interpretiert. Deswegen ist der Link in der echo-Anweisung wieder ein Link. Also muss man dem Parser sagen, dass PIs erst mit '?>' aufhören, wie's in XML üblich ist. Das Originalbeispiel und Dein zweiter PHP-Schnipsel funktionieren "zufällig", weil das '<a ' auch nach SGML-Syntax noch zur PI gezählt wird! |