Как заменить класс sanitize в cakephp 3?
В настоящее время я работаю над обновлением cakephp с 2.10 до 3.8, я заметил, что класс Sanitize был удален. Кто-нибудь знает как его заменить?
У меня есть следующая функция:
public function view( $page )
{
$page = Sanitize::paranoid( $page, array('-', '_') );
$this->render( $page );
}
1 ответ
На самом деле зависит от вашей модели угроз, то есть от того, от чего именно вы пытаетесь защитить.
Sanitize:paranoid()
удаляет не буквенно-цифровые символы, кроме $allowed
аргумент, поэтому, если вы хотите заменить поведение 1:1, вы можете, например, использовать регулярное выражение:
$page = preg_replace('/[^\w\-]/', '', $page);