Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中更快地过滤电子邮件?_Php_Regex_Email_Filter - Fatal编程技术网

如何在PHP中更快地过滤电子邮件?

如何在PHP中更快地过滤电子邮件?,php,regex,email,filter,Php,Regex,Email,Filter,我目前正在编写一个脚本来过滤我收到的一些电子邮件内容 这些电子邮件是对我的时事通讯活动的回复,我想知道谁想要取消订阅。为此,我可以寻找一些特定的词,例如“请”、“删除”,并且我还必须检查电子邮件是否是从mailer守护进程发送的,以便在用户下次登录时提醒用户更改其电子邮件地址 首先,我必须从MySQL数据库中检索字典,它目前包含77个单词,然后我为我处理的每个邮件中的每个单词调用两个preg_match_all函数 我想检查一下,在电子邮件内容中是否可以看到整个单词\b请\b,有些人可能会犯错误

我目前正在编写一个脚本来过滤我收到的一些电子邮件内容

这些电子邮件是对我的时事通讯活动的回复,我想知道谁想要取消订阅。为此,我可以寻找一些特定的词,例如“请”、“删除”,并且我还必须检查电子邮件是否是从mailer守护进程发送的,以便在用户下次登录时提醒用户更改其电子邮件地址

首先,我必须从MySQL数据库中检索字典,它目前包含77个单词,然后我为我处理的每个邮件中的每个单词调用两个preg_match_all函数

我想检查一下,在电子邮件内容中是否可以看到整个单词
\b请\b
,有些人可能会犯错误,将单词写成“pleease”,然后我使用
\bp+l+e+a+s+e+\b

但是,字典正在成长,越来越多的单词被添加到里面,脚本也变得越来越慢,它每秒至少处理4封电子邮件

你有没有其他办法比现在更快地处理邮件


构建匹配77个单词的正则表达式比执行77个preg\u match\u all命令更快吗?

对于您的问题,“构建匹配77个单词的正则表达式比执行77个preg\u match\u all命令更快吗?”我建议不要使用正则表达式。我可能错了,但我认为字符串函数比正则表达式快。阅读此:)也阅读此

为他们提供自动取消订阅的链接不公平吗?我已经这样做了,但很多人不点击它,我还想从mailer Daemons获取邮件我想你可以这样做,但从一家公司发送电子邮件是标准做法noReply@myDomain.com然后在底部包含一个退订链接。好的,我最后会写一些函数来检查每个字符的单词,谢谢你的建议!