Объясните насчёт filter_input

164
26 января 2018, 23:56

Не могу разобраться как работает php функция filter_input. Немного разобрался в PHP, но в документации дается тяжело.
Например, есть код

<?php
$example = filter_input(0, 'input');
?>

и форма

<form method="POST">
<input type="text" name="example">
</form>

В документации указано:

filter Если не указан, то используется FILTER_DEFAULT, который равнозначен FILTER_UNSAFE_RAW. Это значит, что по умолчанию не применяется никакого фильтра

Теперь интересует такой вопрос, если я не указываю флаг в $example, то функция фильтрует данные или нет смысла ее использовать в такой конструкции? Или лучше пользоваться функциями htmlspecialchars, strip_tags и так далее

Answer 1

$_GET, $_POST, $_COOKIE и $_REQUEST фильруются с использованием фильтра по умолчанию. filter_input(INPUT_POST, 'input') без дополнительных параметров тоже использует фильтр по умолчанию. поэтому нет разницы. либо вы получите переменную из

$example = filter_input(0, 'input');

либо

$example = $_POST['input'];

в любом случае придется далее заниматься санитайзингом, т.е. использовать htmlspecialchars и т.д. Поэтому, наверно, есть смысл использовать filter_input с третьим параметром.

READ ALSO
Создание баз &ldquo;на лету&rdquo;. MySQL, PHP

Создание баз “на лету”. MySQL, PHP

Никогда с таким не сталкивался, но появилась необходимость разработать систему, которая бы создавала сайты, что называется, на летуЕсли в двух...

151
Как вытащить все аудиозаписи с ВК

Как вытащить все аудиозаписи с ВК

Я хочу знать как можно распарсить аудиозаписи из ВКПервоначально я подумал скачать все через расширение по типу savefrom

205
Загрузка библиотек через composer

Загрузка библиотек через composer

Установлен composer на хостинг, мне необходимо залить обновления библиотек для Drupal

165