Ist check_plain () genug für die Wieder Darstellung des Textes von Nutzern im Browser eingegeben haben , oder sollte ich noch Filter mit filter_xss () ?
Ist check_plain () genug für die Wieder Darstellung des Textes von Nutzern im Browser eingegeben haben , oder sollte ich noch Filter mit filter_xss () ?
Antworten:
Ich stelle mir vor, es geht um die Verwendung von check_plain(filter_xss($string))oder filter_xss(check_plain($string)).
check_plain()und filter_xss()haben zwei verschiedene und im Gegensatz dazu Zwecke:
check_plain() codiert Sonderzeichen in einer Klartextzeichenfolge, die dann als HTML angezeigt wird.filter_xss()filtert eine HTML-Zeichenfolge, um Sicherheitsanfälligkeiten durch Cross-Site-Scripting (XSS) zu vermeiden. Insbesondere ist sein Zweck:
Wenn Sie verwenden check_plain(), soll die an die Funktion übergebene Zeichenfolge als einfacher Text verwendet werden. in diesem Fall filter_xss()ist nicht erforderlich. Wenn Sie verwenden filter_xss(), soll die an die Funktion übergebene Zeichenfolge HTML sein und check_plain()ist nicht erforderlich.
Wenn es bei der Frage um die Verwendung von check_plain()und filter_xss()für verschiedene Teile desselben Strings geht, können Sie, wie in seinem Kommentar hervorgehoben, (zum Beispiel) check_plain()den Inhalt von Tag-Attributen und filter_xss()das gesamte HTML-Tag verwenden.