Verwenden Sie keinen selbstschließenden Tag-Namen? echo strip_tags($text, '<br>');
Das strip_tags()
Argument der allowable_tags
Funktion akzeptiert die erlaubten Tags in der Form <tagname>
Der Grund, warum dein Code nicht funktioniert hat, war, dass du <br />
anstelle von <br>
benutzt hast.
strip_tags
ist nicht als Sicherheitsmaßnahme gedacht, und die Verwendung mit allowable_tags
ist definitiv unsicher, da Event-Handler und andere schädliche Attribute durchgelassen werden.
Wenn Sie eine Benutzereingabe mit einigen Elementen und Attributen auf der weißen Liste erlauben möchten, müssen Sie eine HTML-Bereinigungsbibliothek mit einem geeigneten HTML-Parser verwenden. Siehe zum Beispiel HTML-Reiniger .
Es ist normalerweise besser für Benutzerkommentare, dem Benutzer nicht die Kontrolle über das HTML-Markup zu geben, sondern Rohtext, HTML-Escape bei der Ausgabe und Ersetzungen, um Markup aus Text zu erzeugen (zB: \n
). - & gt; <br>
, \n\n
- & gt; </p><p>
, Link-Erkennung).