/** * 从String中通过正则表达式找到所有的Email地址. * @param $str * @return array 搜索到的Email地址组成的array. */ public static function parseEmails($str) { $emails = array(); preg_match_all("(([\w\.-]{1,})@([\w-]{1,}\.+[a-zA-Z]{2,}))", $str, $matches, PREG_PATTERN_ORDER); // var_dump($matches); foreach($matches[0] as $email) { $emails[$email] = $email; } return $emails; }
$matches中包含所有搜索到的Group, 可使用不同的Pattern对得到的数组进行排序, 如上$matches[0]为最外部Group搜索到的字符.
详细可参阅:http://php.net/manual/en/function.preg-match-all.php
相关阅读:
Send email using PHP with Gmail – PhpMailer通过Gmail发送邮件 <->
// Proudly powered by Apache, PHP, MySQL, WordPress, Bootstrap, etc,.