Почему это не работает:
if(!($data['email'] = filter_var(INPUT_POST,'email',FILTER_SANITIZE_EMAIL))) { $errors['email'] = 'Invalid Email.'; }
И это работает:
if(!($data['email'] = filter_input(INPUT_POST,'email',FILTER_SANITIZE_EMAIL))) { $errors['email'] = 'Invalid Email.'; }
Разница здесь – filter_var и filter_input и когда я нажимаю submit filter_var не отправляет форму, а filter_input . Также здесь
filter_input(INPUT_POST,'email',FILTER_SANITIZE_EMAIL))
если я написал, например, some'@email.com почему не удаляет ' . Работает ли эта функция? Я немного смущен.
Если вы посмотрите на аргументы функции filter_var и filter_input , вы увидите, почему:
filter_var ($value_to_be_filtered, FILTER_TYPE, $options)
В.С.
filter_input($input_type , $variable_from_input, FILTER_TYPE, $options)
Где $input_type является одним из INPUT_GET , INPUT_POST , INPUT_COOKIE , INPUT_SERVER или INPUT_ENV .