Validation 用于校验数据。例如,在filter_var($variable)
中传入FILTER_VALIDATE_EMAIL
,会校验$variable
是否为合法的email地址。
Sanitization 用于修正数据,不校验数据。例如,在filter_var($variable)
中传入FILTER_SANITIZE_EMAIL
,$variable
变量中不符合email地址规则的字符将会被修剪。
Validation 校验通过返回数据,校验失败返回false
。
Sanitization 返回修正后的数据,无论修正是否起作用。
var_dump(filter_var('bob……@example.com', FILTER_VALIDATE_EMAIL)); //false
var_dump(filter_var('bob……@example.com', FILTER_SANITIZE_EMAIL)); //'bob@example.com'
var_dump(filter_var('bob@@example.com', FILTER_VALIDATE_EMAIL)); //false
var_dump(filter_var('bob@@example.com', FILTER_SANITIZE_EMAIL)); //'bob@@example.com'