Warum ist es besser zu verwenden filter_input()?
Sollte dies eine Elementare Frage, aber warum ist es besser, etwas zu verwenden, wie diese:
$pwd = filter_input(INPUT_POST, 'pwd');
Statt nur:
$pwd = $_POST['pwd'];
PS: ich verstehe, dass die filter-Erweiterung kann verwendet werden, mit mehr Argumente, um eine zusätzliche Ebene der Bereinigung.
- Die Frage hat mehr Stimmen, als für die akzeptierte Antwort. Interessant ...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist es nicht.
$_GET
,$_POST
,$_COOKIE
und$_REQUEST
sind gefiltert mit Standard filter.filter_input(INPUT_POST, 'pwd')
ohne zusätzliche Parameter verwendet auch die Standard-filter. Es gibt also überhaupt keinen Unterschied.filter_input
vs.htmlspecialchars
und bemerkt, dass dieses veraltet ist. Die meisten PHP-Konfigurationen nicht filtern diese Daten nicht mehr, der link, den Sie veröffentlichen hat sogar die Standard-Konfiguration eingestellte Wert als "unsafe_raw""unsafe_raw"
, aber das ändert nichts an der Tatsache, dass die Verwendungfilter_input
ohnefilter
parameter nicht geben Ihnen keine zusätzliche Ebene der Sicherheit.Alle Daten, die vom client gesendet (wie POST-Daten) sollte saniert und zu entkommen (und noch besser, der Vernunft-geprüft), um sicherzustellen, dass es nicht geht, zu töten, Ihre website.
SQL-Injection und Cross-site-scripting sind die beiden größten Bedrohungen für dieses Versäumnis zu bereinigen Sie Ihren Benutzer-Daten gesendet.
Ist es auch nicht besser.
Bitte docs auf filter_input
http://www.php.net//manual/en/function.filter-input.php
und klicken Sie auf die "Filtertypen" - link.
http://www.php.net/manual/en/filter.filters.php
Habe ich immer nur benutzt die integer-filter ...