不需要的控制字符

时间:2017-10-27 13:16:23

标签: php email

我网站上的用户输入电子邮件地址有时会显示如下,并保存在数据库accounts@somesite.co.uk           Â或类似内容中。 在结果打印输出中,它就像这样accounts@somesite.co.uk � 我认为这些是来自非UTF-8字符集的空格字符。 我尝试使用正则表达式,我肯定是错误的

$email = preg_replace('/[\t ]/', '', $email); 

我试过

$email=trim($email);

有人可以指导我吗?

2 个答案:

答案 0 :(得分:1)

如果您希望检查电子邮件并警告用户是否存在问题,您可以使用filter_var($email, FILTER_SANITIZE_EMAIL)删除所有无效字符或filter_var($email, FILTER_VALIDATE_EMAIL)

答案 1 :(得分:0)

辉煌。过滤器做到了。我尝试了正则表达式,但没有效果。 BTW UTF-8语句在HTML头中。我想这会迫使它但不确定。我没有尝试过urlencode,但是未来的问题需要记住。