Beispiel #1
0
 /**
  * 根据模板发送系统邮件
  * @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;
     }
 }
Beispiel #2
0
 /**
  * 根据模板发送系统邮件
  * @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;
     }
 }