дезинфицирующие данные

Я видел разные комментарии повсюду, некоторые говорят, что zend framework автоматически дезинфицирует сообщения / данные, но другие говорят, что это не так.

В чем дело? Я видел, что делать это в предварительном режиме с помощью foreach на getParams – это самый быстрый способ, но есть ли у кого-нибудь какие-либо предложения?

Вероятно, сделка Zend_Controller_Request и Zend_Db . Данные запроса часто помещаются в БД.

Объект запроса ничего не выходит. Вы можете заставить его использовать фильтры, фильтры форм или, например, используя описанную здесь технику отражения:

  • Действия, теперь с параметрами!

Запросы Zend_Db в основном ускользают, как в других ORM, например, в PDO .

Он не автоматически дезинформирует данные запроса. Этого не может быть, потому что это требует, чтобы он знал, как его дезинфицировать, например, если $_GET['foo'] подвергается дезинфекции или для чисел? Вы должны это сказать.

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

Используйте то, что уместно.

Это определенно не автоматически дезинфицирует ваши переменные для вас. Вы можете сделать что-то вроде foreach или использовать array_map зависимости от контекста, например:

 $_POST = array_map('mysql_real_escape_string', $_POST); 

В идеале, хотя вы должны рассматривать каждую переменную на индивидуальной основе. Лично я использую PHP filter_var для фильтрации и дезинфекции.