/** * 根据模板发送系统邮件 * @param <Int> $site_id 站点ID * @param <String> $email_flag 邮件类型 * @param <String> $to_email 接收人 * @param <String> $from_email 发送人 * @param <Array> $title_param 邮件标题替换内容(eg.array('{firstname}'=>'qin')把firstname替换成qin) * @param <Array> $content_param 邮件替换内容(eg.array('{firstname}'=>'qin')把firstname替换成qin) * @return <Boolean> * eg. Mymail::send_mail($site_id=0,$email_flag='',$to_email='',$from_email='',$title_param=array(),$content_param=array()); */ public static function send_mail($site_id = 1, $mail_type = '', $to_email = '', $from_email = '', $title_param = array(), $content_param = array()) { //无邮件类型不能发送邮件 if (empty($mail_type)) { return false; } //无收件人 if (empty($to_email)) { return false; } $mail = self::content($site_id, $mail_type, $to_email, $from_email, $title_param, $content_param); if (!$mail['id']) { return false; } $from_email = $mail['from_email']; $title = $mail['title_result']; //解决标题中文乱码问题 $title = "=?UTF-8?B?" . base64_encode($title) . "?="; $content = $mail['content_result']; /** * mail函数发送邮件 */ try { $data = array(); $data['to_email'] = $to_email; $data['title'] = $title; $data['content'] = $content; $mail_log_id = Mymail_log::instance()->add($data); $mail = @self::send($to_email, $title, $content, $from_email); //d($mail); if ($mail) { $update_data = array(); $update_data['status'] = 1; Mymail_log::instance($mail_log_id)->update($update_data); return $mail; } else { return $mail; } } catch (Exception $e) { return false; } }
/** * 根据模板发送系统邮件 * @param <String> $email_flag 邮件类型 * @param <String> $to_email 接收人 * @param <String> $from_email 发送人 * @param <Array> $title_param 邮件标题替换内容(eg.array('{firstname}'=>'qin')把firstname替换成qin) * @param <Array> $content_param 邮件替换内容(eg.array('{firstname}'=>'qin')把firstname替换成qin) * @return <Boolean> * eg. Mymail::send_mail($email_flag='',$to_email='',$from_email='',$title_param=array(),$content_param=array()); */ public static function send_mail($mail_type = '', $to_email = '', $from_email = '', $title_param = array(), $content_param = array()) { //无邮件类型不能发送邮件 if (empty($mail_type)) { return false; } //无收件人 if (empty($to_email)) { return false; } $mail = self::content($mail_type, $to_email, $from_email, $title_param, $content_param); if (!$mail['id']) { return false; } $from_email = $mail['from_email']; $title = $mail['title_result']; //解决标题中文乱码问题 $title = "=?UTF-8?B?" . base64_encode($title) . "?="; $content = $mail['content_result']; /** * 邮件头部信息 */ $headers = ''; $headers .= 'From: ' . $from_email . "\r\n"; $headers .= 'Reply-To: ' . $from_email . "\r\n"; $headers .= 'MIME-Version:1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=utf8' . "\r\n"; /** * mail函数发送邮件 */ try { $data = array(); $data['title'] = $title; $data['content'] = $content; // $data['to_email'] = $to_email; $mail_log_id = Mymail_log::instance()->add($data); $mail = self::send($to_email, $title, $content); if ($mail) { $update_data = array(); $update_data['status'] = 1; Mymail_log::instance($mail_log_id)->update($update_data); } return $mail; } catch (Exception $e) { return false; } }