Alle, die Daten zurückgeben.
- Wenn eine Funktion intern ausgegeben wird, übernimmt sie die Verantwortung für das Entkommen
- Wenn eine Funktion die Daten zur Verwendung zurückgibt, werden sie nicht entfernt, um ein doppeltes Entkommen zu vermeiden. Es liegt in Ihrer Verantwortung
Dies liegt daran, dass Sie immer spät entkommen sollten, damit kein Zweifel daran besteht, ob eine Variable maskiert wird.
Wenn die Ausgabe von APIs, wie home_url
sie vorab maskiert wurden, nicht mehr wahr wäre. Es würde auch eine doppelte Flucht einführen, die in einigen Szenarien verwendet werden kann, um die Flucht zu überwinden.
Einige weitere Hinweise:
- Machen Sie sich nicht die Mühe, statischen Zeichenfolgen zu entkommen, es ist sinnlos
- Versuchen Sie nicht, Funktionen wie
the_permalink
in esc_url
usw. zu verpacken. Escape-Funktionen sind immer noch Funktionen. Sie sind keine magischen Modifikatoren / Textmarker, die PHP anweisen, etwas zu sichern.
- Geben Sie keine komplexen HTML-Fragmente in Variablen zurück, geben Sie Daten zurück, Daten müssen nicht maskiert werden, aber das Escaping eines komplexen HTML-Fragments ist nicht einfach und normalerweise nicht sicher
- Stellen Sie bei der Verwendung von Shortcodes / Filtern sicher, dass Sie die hinzugefügten / geänderten Bits maskieren. Lassen Sie den Rest jedoch in Ruhe und vertrauen Sie darauf, dass sie maskiert wurden. Es liegt nicht in Ihrer Verantwortung, die in diesen Situationen an anderer Stelle generierte Ausgabe zu maskieren. Vertrauen Sie ihm jedoch auch nicht als Eingabe, wenn er als Leitfaden für Ihren eigenen Code verwendet wird