2011-09-02 123 views
1

任何人都可以提出一个快速的函数,将自动去除PHP中的字符串空间&撇号。字符串替换(PHP)

我只需要从字符串中删除任何不需要的东西,然后它用作电子邮件地址。

例如。

$email = "myname'[email protected] "; // need to remove the apostrope & empty space 

回答

2
$email = str_replace(array("'", ' '), '', $email); 
1

,你需要的不是str_replace函数,但验证一个电子邮件地址(你描述什么是真正消毒,但不会要阻止输入如果电子邮件地址无效?)什么。

这里有一个正则表达式(示例)来检查电子邮件地址的格式:

(preg_match('/^\w[-.\w]*@(\w[-._\w]*\.[a-zA-Z]{2,}.*)$/', $_POST['email']) 
4
echo preg_replace('/[\\\' ]/', '', "myname'[email protected] "); 

但我不相信这是要做的事情。考虑这样的事情:

if(!filter_var("myname'[email protected] ", FILTER_VALIDATE_EMAIL)) 
    echo("E-mail is not valid"); 
+0

哇..真棒响应感谢你们(和女孩)不能性别歧视:-) – Zabs

+0

谢谢!还要考虑第二个片段,因为电子邮件可能会以许多不同的方式变形,因此无法预测所有这些内容。如果您已经存储了错误的电子邮件或将其从数据库中删除,最好告知用户。 –

+1

@Gaz:也考虑选择答案。 :) –