当前位置: 首页>>代码示例>>PHP>>正文


PHP PHPMailer::AddCustomHeader方法代码示例

本文整理汇总了PHP中PHPMailer::AddCustomHeader方法的典型用法代码示例。如果您正苦于以下问题:PHP PHPMailer::AddCustomHeader方法的具体用法?PHP PHPMailer::AddCustomHeader怎么用?PHP PHPMailer::AddCustomHeader使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PHPMailer的用法示例。


在下文中一共展示了PHPMailer::AddCustomHeader方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: mailer_to

function mailer_to($to, $subject, $body)
{
    require_once "class.phpmailer.php";
    $mail3 = new PHPMailer();
    $mail3->IsSMTP();
    // telling the class to use SMTP
    $mail3->Host = "mail.pp3.co.id";
    // SMTP server
    $mail3->SMTPAuth = true;
    // enable SMTP authentication
    $mail3->SMTPSecure = "ntlm";
    // sets the prefix to the servier
    $mail3->IsHTML(true);
    $mail3->Username = "support.si@pp3.co.id";
    // GMAIL username
    $mail3->Password = "pelindo3pusat";
    // GMAIL password
    $mail3->SetFrom('support_si@pp3.co.id', 'Subdit. Sistem Informasi Kantor Pusat Pelindo III');
    $mail3->AddAddress($to);
    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    $headers .= "From: support_si@pp3.co.id <Subdit. Sistem Informasi Kantor Pusat Pelindo III>\r\n";
    $mail3->Subject = $subject;
    $mail3->Body = $body;
    $mail3->AddCustomHeader($headers);
    $mail3->WordWrap = 100;
    if (!$mail3->Send()) {
        echo 'Email tidak terkirim.';
        echo 'Mailer error: ' . $mail3->ErrorInfo;
    } else {
        echo 'Email Terkirim.<br>';
    }
}
开发者ID:erikhard,项目名称:egratifikasi,代码行数:33,代码来源:php_mailer_pi.php

示例2: create

 /**
  * Creates new instance of PHPMailer and set default options from config
  * @api
  * @throws ComponentException
  * @throws \phpmailerException
  * @return \PHPMailer
  */
 public function create()
 {
     // can initial, can't use
     if (!class_exists('\\PHPMailer')) {
         throw new ComponentException("PHPMailer library is required for `Bluz\\Mailer` package. <br/>\n" . "Read more: <a href='https://github.com/bluzphp/framework/wiki/Mailer'>" . "https://github.com/bluzphp/framework/wiki/Mailer</a>");
     }
     $mail = new \PHPMailer();
     $mail->WordWrap = 920;
     // RFC 2822 Compliant for Max 998 characters per line
     $fromEmail = $this->getOption('from', 'email');
     $fromName = $this->getOption('from', 'name') ?: '';
     // setup options from config
     $mail->SetFrom($fromEmail, $fromName, false);
     // setup options
     if ($settings = $this->getOption('settings')) {
         foreach ($settings as $name => $value) {
             $mail->set($name, $value);
         }
     }
     // setup custom headers
     if ($headers = $this->getOption('headers')) {
         foreach ($headers as $header => $value) {
             $mail->AddCustomHeader($header, $value);
         }
     }
     return $mail;
 }
开发者ID:Kit-kat1,项目名称:custom-bluz-app,代码行数:34,代码来源:Mailer.php

示例3: initMailFromSet

 /**
  * Inner mailer initialization from set variables
  *
  * @return void
  */
 protected function initMailFromSet()
 {
     $this->mail->SetLanguage($this->get('langLocale'), $this->get('langPath'));
     $this->mail->CharSet = $this->get('charset');
     $this->mail->From = $this->get('from');
     $this->mail->FromName = $this->get('from');
     $this->mail->Sender = $this->get('from');
     $this->mail->ClearAllRecipients();
     $this->mail->ClearAttachments();
     $this->mail->ClearCustomHeaders();
     $emails = explode(static::MAIL_SEPARATOR, $this->get('to'));
     foreach ($emails as $email) {
         $this->mail->AddAddress($email);
     }
     $this->mail->Subject = $this->get('subject');
     $this->mail->AltBody = $this->createAltBody($this->get('body'));
     $this->mail->Body = $this->get('body');
     // add custom headers
     foreach ($this->get('customHeaders') as $header) {
         $this->mail->AddCustomHeader($header);
     }
     if (is_array($this->get('images'))) {
         foreach ($this->get('images') as $image) {
             // Append to $attachment array
             $this->mail->AddEmbeddedImage($image['path'], $image['name'] . '@mail.lc', $image['name'], 'base64', $image['mime']);
         }
     }
 }
开发者ID:kewaunited,项目名称:xcart,代码行数:33,代码来源:Mailer.php

示例4:

 /**
  * Miscellaneous calls to improve test coverage and some small tests
  */
 function test_Miscellaneous()
 {
     $this->assertEquals('application/pdf', PHPMailer::_mime_types('pdf'), 'MIME TYPE lookup failed');
     $this->Mail->AddCustomHeader('SomeHeader: Some Value');
     $this->Mail->ClearCustomHeaders();
     $this->Mail->ClearAttachments();
     $this->Mail->IsHTML(false);
     $this->Mail->IsSMTP();
     $this->Mail->IsMail();
     $this->Mail->IsSendMail();
     $this->Mail->IsQmail();
     $this->Mail->SetLanguage('fr');
     $this->Mail->Sender = '';
     $this->Mail->CreateHeader();
     $this->assertFalse($this->Mail->set('x', 'y'), 'Invalid property set succeeded');
     $this->assertTrue($this->Mail->set('Timeout', 11), 'Valid property set failed');
     //Test pathinfo
     $a = '/mnt/files/飛兒樂 團光茫.mp3';
     $q = PHPMailer::mb_pathinfo($a);
     $this->assertEquals($q['dirname'], '/mnt/files', 'UNIX dirname not matched');
     $this->assertEquals($q['basename'], '飛兒樂 團光茫.mp3', 'UNIX basename not matched');
     $this->assertEquals($q['extension'], 'mp3', 'UNIX extension not matched');
     $this->assertEquals($q['filename'], '飛兒樂 團光茫', 'UNIX filename not matched');
     $this->assertEquals(PHPMailer::mb_pathinfo($a, PATHINFO_DIRNAME), '/mnt/files', 'Dirname path element not matched');
     $this->assertEquals(PHPMailer::mb_pathinfo($a, 'filename'), '飛兒樂 團光茫', 'Filename path element not matched');
     $a = 'c:\\mnt\\files\\飛兒樂 團光茫.mp3';
     $q = PHPMailer::mb_pathinfo($a);
     $this->assertEquals($q['dirname'], 'c:\\mnt\\files', 'Windows dirname not matched');
     $this->assertEquals($q['basename'], '飛兒樂 團光茫.mp3', 'Windows basename not matched');
     $this->assertEquals($q['extension'], 'mp3', 'Windows extension not matched');
     $this->assertEquals($q['filename'], '飛兒樂 團光茫', 'Windows filename not matched');
 }
开发者ID:rohitvineet,项目名称:PHP-Online-Shop,代码行数:35,代码来源:phpmailerTest.php

示例5: AddCustomHeader

 /**
  * Extended AddCustomHeader function in order to stop duplicate 
  * message-ids
  * http://tracker.moodle.org/browse/MDL-3681
  */
 public function AddCustomHeader($custom_header)
 {
     if (preg_match('/message-id:(.*)/i', $custom_header, $matches)) {
         $this->MessageID = $matches[1];
         return true;
     } else {
         return parent::AddCustomHeader($custom_header);
     }
 }
开发者ID:masaterutakeno,项目名称:MoodleMobile,代码行数:14,代码来源:moodle_phpmailer.php

示例6: send

 function send($o, $to, $from, $subject, $body, $headers)
 {
     $mail = new PHPMailer(true);
     $mail->IsSMTP();
     $mail->SMTPDebug = 0;
     // enables SMTP debug information (for testing)
     $mail->SMTPAuth = $this->api->getConfig("tmail/phpmailer/username", null) ? true : false;
     // enable SMTP authentication
     $mail->Host = $this->api->getConfig("tmail/smtp/host");
     $mail->Port = $this->api->getConfig("tmail/smtp/port");
     $mail->Username = $this->api->getConfig("tmail/phpmailer/username", null);
     $mail->Password = $this->api->getConfig("tmail/phpmailer/password", null);
     $mail->SMTPSecure = 'tls';
     $mail->AddReplyTo($this->api->getConfig("tmail/phpmailer/reply_to"), $this->api->getConfig("tmail/phpmailer/reply_to_name"));
     $mail->AddAddress($to);
     $mail->Subject = $subject;
     $mail->MsgHTML($body);
     $mail->AltBody = null;
     $mail->IsHTML(true);
     $bcc = $this->api->getConfig("tmail/phpmailer/bcc", null);
     if ($bcc) {
         $bcc_name = $this->api->getConfig("tmail/phpmailer/bcc_name", null);
         $mail->AddBCC($bcc, $bcc_name);
     }
     $internal_header_map = array("Content-Type" => "ContentType");
     $void_headers = array("MIME-Version");
     $fromAdded = false;
     foreach (explode("\n", $headers) as $h) {
         if (preg_match("/^(.*?):(.*)\$/", $h, $t)) {
             if (strtolower($t[1]) == "from" && $t[2]) {
                 $mail->SetFrom($t[2]);
                 $fromAdded = true;
                 continue;
             }
             if (isset($internal_header_map[$t[1]])) {
                 $key = $internal_header_map[$t[1]];
                 $mail->{$key} = $t[2];
                 continue;
             } else {
                 if (in_array($t[1], $void_headers)) {
                     continue;
                 }
             }
         }
         $mail->AddCustomHeader($h);
     }
     if (!$fromAdded) {
         $mail->SetFrom($this->api->getConfig("tmail/phpmailer/from"), $from ? "" : $this->api->getConfig("tmail/phpmailer/from_name"));
         $mail->AddReplyTo($this->api->getConfig("tmail/phpmailer/reply_to"), $this->api->getConfig("tmail/phpmailer/reply_to_name"));
     }
     $mail->Send();
 }
开发者ID:xavoctechnocratspvtltd,项目名称:svc,代码行数:52,代码来源:PHPMailer.php

示例7: mail

 public function mail($to, $subj, $body, $headers = false, $params = false)
 {
     $mail = new PHPMailer();
     $mail->IsSMTP();
     // set mailer to use SMTP
     $mail->Host = "mail.inversiondesigns.com";
     // specify main and backup server
     $mail->SMTPAuth = true;
     // turn on SMTP authentication
     $mail->Username = "bot@promotro.com";
     // SMTP username
     $mail->Password = "r4tb4ndit";
     // SMTP password
     $mail->AddAddress($to);
     if (is_string($headers)) {
         $headers = explode("\n", $headers);
         foreach ($headers as $header) {
             $h = explode(":", $header, 2);
             if (stripos($h[0], "From") !== false) {
                 $from = $h[1];
                 if (stripos($from, "<") !== false) {
                     $start = strpos($from, "<") + 1;
                     $mail->From = substr($from, $start, strpos($from, ">") - $start);
                     $mail->FromName = substr($from, 0, strpos($from, "<"));
                 } else {
                     $mail->From = $h[1];
                     $mail->FromName = $h[1];
                 }
             } else {
                 $mail->AddCustomHeader(trim($header));
             }
         }
     } else {
         $mail->From = "bot@inversiondesigns.com";
         $mail->FromName = "Inversion Bot";
         $mail->AddReplyTo("noreply@inversiondesigns.com", "No Reply");
     }
     //$mail->WordWrap = 50;                                 // set word wrap to 50 characters
     $mail->IsHTML(true);
     // set email format to HTML
     $mail->Subject = $subj;
     $mail->Body = $body;
     $mail->AltBody = strip_tags($body);
     $result = $mail->Send();
     $mail->close();
     return $result;
 }
开发者ID:sdytrych,项目名称:drivesafetogether,代码行数:47,代码来源:class.HtmlMailMan.php

示例8:

 function phpmailer_init_smtp(PHPMailer $phpmailer)
 {
     if (!get_option('mailjet_enabled') || 0 == get_option('mailjet_enabled')) {
         return;
     }
     $phpmailer->Mailer = 'smtp';
     $phpmailer->SMTPSecure = get_option('mailjet_ssl');
     $phpmailer->Host = MJ_HOST;
     $phpmailer->Port = get_option('mailjet_port');
     $phpmailer->SMTPAuth = TRUE;
     $phpmailer->Username = get_option('mailjet_username');
     $phpmailer->Password = get_option('mailjet_password');
     $from_email = get_option('mailjet_from_email') ? get_option('mailjet_from_email') : get_option('admin_email');
     $phpmailer->From = $from_email;
     $phpmailer->Sender = $from_email;
     $phpmailer->AddCustomHeader(MJ_MAILER);
 }
开发者ID:Anciela,项目名称:anciela.info,代码行数:17,代码来源:mailjet-class.php

示例9:

 /**
  * Miscellaneous calls to improve test coverage and some small tests
  */
 function test_Miscellaneous()
 {
     $this->assertEquals('application/pdf', PHPMailer::_mime_types('pdf'), 'MIME TYPE lookup failed');
     $this->Mail->AddCustomHeader('SomeHeader: Some Value');
     $this->Mail->ClearCustomHeaders();
     $this->Mail->ClearAttachments();
     $this->Mail->IsHTML(false);
     $this->Mail->IsSMTP();
     $this->Mail->IsMail();
     $this->Mail->IsSendMail();
     $this->Mail->IsQmail();
     $this->Mail->SetLanguage('fr');
     $this->Mail->Sender = '';
     $this->Mail->CreateHeader();
     $this->assertFalse($this->Mail->set('x', 'y'), 'Invalid property set succeeded');
     $this->assertTrue($this->Mail->set('Timeout', 11), 'Valid property set failed');
 }
开发者ID:NurulRizal,项目名称:BB,代码行数:20,代码来源:phpmailerTest.php

示例10: sendEmail

 public static function sendEmail($vars, $email, $body, $alt, $clicktrack = true)
 {
     $mail = new PHPMailer();
     $mail->IsSMTP();
     $mail->Username = CShell::SMTPUN();
     $mail->Password = CShell::SMTPPW();
     $mail->IsHTML(true);
     $mail->SetFrom($vars["from"]);
     $mail->FromName = $vars["name"];
     $mail->AddReplyTo($vars["reply"]);
     $mail->Subject = $vars["subject"];
     $mail->MsgHTML($body);
     $mail->AltBody = $alt;
     $x_smtpapi = array('category' => array('webinar', $vars['category']));
     if (!$clicktrack) {
         $x_smtpapi['filters'] = array('clicktrack' => array('settings' => array('enable' => 0)));
     }
     $blah = 'X-SMTPAPI: ' . json_encode($x_smtpapi);
     $mail->AddCustomHeader($blah);
     $mail->AddAddress($email);
     $response = $mail->Send();
     $mail->ClearAddresses();
     return $response;
 }
开发者ID:mnpollotta,项目名称:webinar-framework,代码行数:24,代码来源:SystemTool.php

示例11: api_mail_html

/**
 * Sends an HTML email using the phpmailer class (and multipart/alternative to downgrade gracefully)
 * Sender name and email can be specified, if not specified
 * name and email of the platform admin are used
 *
 * @author Bert Vanderkimpen ICT&O UGent
 * @author Yannick Warnier <yannick.warnier@beeznest.com>
 *
 * @param string    name of recipient
 * @param string    email of recipient
 * @param string    email subject
 * @param string    email body
 * @param string    sender name
 * @param string    sender e-mail
 * @param array     extra headers in form $headers = array($name => $value) to allow parsing
 * @param array     data file (path and filename)
 * @param array     data to attach a file (optional)
 * @param bool      True for attaching a embedded file inside content html (optional)
 * @return          returns true if mail was sent
 * @see             class.phpmailer.php
 */
function api_mail_html($recipient_name, $recipient_email, $subject, $message, $senderName = '', $senderEmail = '', $extra_headers = array(), $data_file = array(), $embedded_image = false, $additionalParameters = array())
{
    global $platform_email;
    $mail = new PHPMailer();
    $mail->Mailer = $platform_email['SMTP_MAILER'];
    $mail->Host = $platform_email['SMTP_HOST'];
    $mail->Port = $platform_email['SMTP_PORT'];
    $mail->CharSet = $platform_email['SMTP_CHARSET'];
    // Stay far below SMTP protocol 980 chars limit.
    $mail->WordWrap = 200;
    if ($platform_email['SMTP_AUTH']) {
        $mail->SMTPAuth = 1;
        $mail->Username = $platform_email['SMTP_USER'];
        $mail->Password = $platform_email['SMTP_PASS'];
    }
    // 5 = low, 1 = high
    $mail->Priority = 3;
    $mail->SMTPKeepAlive = true;
    // Default values
    $notification = new Notification();
    $defaultEmail = $notification->getDefaultPlatformSenderEmail();
    $defaultName = $notification->getDefaultPlatformSenderName();
    // Error to admin.
    $mail->AddCustomHeader('Errors-To: ' . $defaultEmail);
    // If the parameter is set don't use the admin.
    $senderName = !empty($senderName) ? $senderName : $defaultEmail;
    $senderEmail = !empty($senderEmail) ? $senderEmail : $defaultName;
    // Reply to first
    if (isset($extra_headers['reply_to'])) {
        $mail->AddReplyTo($extra_headers['reply_to']['mail'], $extra_headers['reply_to']['name']);
        $mail->Sender = $extra_headers['reply_to']['mail'];
        unset($extra_headers['reply_to']);
    }
    $mail->SetFrom($senderEmail, $senderName);
    $mail->Subject = $subject;
    $mail->AltBody = strip_tags(str_replace('<br />', "\n", api_html_entity_decode($message)));
    // Send embedded image.
    if ($embedded_image) {
        // Get all images html inside content.
        preg_match_all("/<img\\s+.*?src=[\"\\']?([^\"\\' >]*)[\"\\']?[^>]*>/i", $message, $m);
        // Prepare new tag images.
        $new_images_html = array();
        $i = 1;
        if (!empty($m[1])) {
            foreach ($m[1] as $image_path) {
                $real_path = realpath($image_path);
                $filename = basename($image_path);
                $image_cid = $filename . '_' . $i;
                $encoding = 'base64';
                $image_type = mime_content_type($real_path);
                $mail->AddEmbeddedImage($real_path, $image_cid, $filename, $encoding, $image_type);
                $new_images_html[] = '<img src="cid:' . $image_cid . '" />';
                $i++;
            }
        }
        // Replace origin image for new embedded image html.
        $x = 0;
        if (!empty($m[0])) {
            foreach ($m[0] as $orig_img) {
                $message = str_replace($orig_img, $new_images_html[$x], $message);
                $x++;
            }
        }
    }
    $message = str_replace(array("\n\r", "\n", "\r"), '<br />', $message);
    $mail->Body = '<html><head></head><body>' . $message . '</body></html>';
    // Attachment ...
    if (!empty($data_file)) {
        $mail->AddAttachment($data_file['path'], $data_file['filename']);
    }
    // Only valid addresses are accepted.
    if (is_array($recipient_email)) {
        foreach ($recipient_email as $dest) {
            if (api_valid_email($dest)) {
                $mail->AddAddress($dest, $recipient_name);
            }
        }
    } else {
        if (api_valid_email($recipient_email)) {
//.........这里部分代码省略.........
开发者ID:annickvdp,项目名称:Chamilo1.9.10,代码行数:101,代码来源:mail.lib.inc.php

示例12: array


//.........这里部分代码省略.........
                             $boundary = trim(str_replace(array('BOUNDARY=', 'boundary=', '"'), '', $charset));
                             $charset = '';
                         }
                     } else {
                         $content_type = trim($content);
                     }
                 } elseif ('cc' == strtolower($name)) {
                     $cc = explode(",", $content);
                 } elseif ('bcc' == strtolower($name)) {
                     $bcc = explode(",", $content);
                 } else {
                     // Add it to our grand headers array
                     $headers[trim($name)] = trim($content);
                 }
             }
         }
     }
     // Empty out the values that may be set
     $bb_phpmailer->ClearAddresses();
     $bb_phpmailer->ClearAllRecipients();
     $bb_phpmailer->ClearAttachments();
     $bb_phpmailer->ClearBCCs();
     $bb_phpmailer->ClearCCs();
     $bb_phpmailer->ClearCustomHeaders();
     $bb_phpmailer->ClearReplyTos();
     // From email and name
     // If we don't have a name from the input headers
     if (!isset($from_name)) {
         $from_name = bb_get_option('name');
     }
     // If we don't have an email from the input headers
     if (!isset($from_email)) {
         $from_email = bb_get_option('from_email');
     }
     // If there is still no email address
     if (!$from_email) {
         // Get the site domain and get rid of www.
         $sitename = strtolower($_SERVER['SERVER_NAME']);
         if (substr($sitename, 0, 4) == 'www.') {
             $sitename = substr($sitename, 4);
         }
         $from_email = 'bbpress@' . $sitename;
     }
     // Plugin authors can override the potentially troublesome default
     $bb_phpmailer->From = apply_filters('bb_mail_from', $from_email);
     $bb_phpmailer->FromName = apply_filters('bb_mail_from_name', $from_name);
     // Set destination address
     $bb_phpmailer->AddAddress($to);
     // Set mail's subject and body
     $bb_phpmailer->Subject = $subject;
     $bb_phpmailer->Body = $message;
     // Add any CC and BCC recipients
     if (!empty($cc)) {
         foreach ((array) $cc as $recipient) {
             $bb_phpmailer->AddCc(trim($recipient));
         }
     }
     if (!empty($bcc)) {
         foreach ((array) $bcc as $recipient) {
             $bb_phpmailer->AddBcc(trim($recipient));
         }
     }
     // Set to use PHP's mail()
     $bb_phpmailer->IsMail();
     // Set Content-Type and charset
     // If we don't have a content-type from the input headers
     if (!isset($content_type)) {
         $content_type = 'text/plain';
     }
     $content_type = apply_filters('bb_mail_content_type', $content_type);
     $bb_phpmailer->ContentType = $content_type;
     // Set whether it's plaintext or not, depending on $content_type
     if ($content_type == 'text/html') {
         $bb_phpmailer->IsHTML(true);
     }
     // If we don't have a charset from the input headers
     if (!isset($charset)) {
         $charset = bb_get_option('charset');
     }
     // Set the content-type and charset
     $bb_phpmailer->CharSet = apply_filters('bb_mail_charset', $charset);
     // Set custom headers
     if (!empty($headers)) {
         foreach ((array) $headers as $name => $content) {
             $bb_phpmailer->AddCustomHeader(sprintf('%1$s: %2$s', $name, $content));
         }
         if (false !== stripos($content_type, 'multipart') && !empty($boundary)) {
             $bb_phpmailer->AddCustomHeader(sprintf("Content-Type: %s;\n\t boundary=\"%s\"", $content_type, $boundary));
         }
     }
     if (!empty($attachments)) {
         foreach ($attachments as $attachment) {
             $bb_phpmailer->AddAttachment($attachment);
         }
     }
     do_action_ref_array('bb_phpmailer_init', array(&$bb_phpmailer));
     // Send!
     $result = @$bb_phpmailer->Send();
     return $result;
 }
开发者ID:abc2mit,项目名称:abc2mit.github.io,代码行数:101,代码来源:functions.bb-pluggable.php

示例13: send_mail

function send_mail($rec_email, $subject, $message, $IsHtml = false, $cc = array(), $bcc = array())
{
    global $THIS_BASEPATH, $btit_settings;
    if (!method_exists('PHPMailer', 'IsMail')) {
        include $THIS_BASEPATH . '/phpmailer/class.phpmailer.php';
    }
    $mail = new PHPMailer();
    if ($btit_settings['mail_type'] == 'php') {
        $mail->IsMail();
        # send via mail
        if (!empty($cc)) {
            $mail->AddCustomHeader('Cc: ' . implode(',', $cc));
        }
        if (!empty($bcc)) {
            $mail->AddCustomHeader('Bcc: ' . implode(',', $bcc));
        }
    } else {
        $mail->IsSMTP();
        # send via SMTP
        $mail->Host = $btit_settings['smtp_server'];
        # SMTP servers
        $mail->Port = $btit_settings['smtp_port'];
        # SMTP port
        $mail->SMTPAuth = true;
        # turn on SMTP authentication
        $mail->Username = $btit_settings['smtp_username'];
        # SMTP username
        $mail->Password = $btit_settings['smtp_password'];
        # SMTP password
        if (!empty($cc)) {
            foreach ($cc as $carbon_copy) {
                $mail->AddCC($carbon_copy[0], $carbon_copy[0]);
            }
        }
        if (!empty($bcc)) {
            foreach ($bcc as $blind_carbon_copy) {
                $mail->AddBCC($blind_carbon_copy[0], $blind_carbon_copy[0]);
            }
        }
    }
    $mail->From = $btit_settings['email'];
    $mail->FromName = $btit_settings['name'];
    $mail->CharSet = $btit_settings['default_charset'];
    $mail->IsHTML($IsHtml);
    $mail->AddAddress($rec_email);
    $mail->AddReplyTo($btit_settings['email'], $btit_settings['name']);
    $mail->Subject = $subject;
    $mail->Body = $message;
    return $mail->Send() ? true : $mail->ErrorInfo;
}
开发者ID:ne0lite,项目名称:xbtit-tracker,代码行数:50,代码来源:common.php

示例14: send


//.........这里部分代码省略.........
     if (!($mail['recipients'] = $this->parse_emails_deep($mail['recipients']))) {
         throw $this->©exception($this->method(__FUNCTION__) . '#recipients_missing', get_defined_vars(), $this->__('Email failure. Missing and/or invalid `recipients` value.'));
     }
     // Possible header(s).
     if ($this->©string->is_not_empty($mail['headers'])) {
         $mail['headers'] = array($mail['headers']);
     }
     $this->©array->isset_or($mail['headers'], array(), TRUE);
     // Standardize/validate each header.
     foreach ($mail['headers'] as $_header) {
         if (!$this->©string->is_not_empty($_header)) {
             throw $this->©exception($this->method(__FUNCTION__) . '#header_missing', get_defined_vars(), $this->__('Email failure. Missing and/or invalid `header`.') . ' ' . sprintf($this->__('Got: `%1$s`.'), $this->©var->dump($_header)));
         }
     }
     unset($_header);
     // Just a little housekeeping.
     // Possible file attachment(s).
     if ($this->©string->is_not_empty($mail['attachments'])) {
         $mail['attachments'] = array($mail['attachments']);
     }
     $this->©array->isset_or($mail['attachments'], array(), TRUE);
     // Standardize/validate each attachment.
     foreach ($mail['attachments'] as &$_attachment) {
         if (!is_array($_attachment)) {
             $_attachment = array('path' => $_attachment);
         }
         if (!$this->©string->is_not_empty($_attachment['path'])) {
             throw $this->©exception($this->method(__FUNCTION__) . '#attachment_path_missing', get_defined_vars(), $this->__('Email failure. Missing and/or invalid attachment `path` value.') . ' ' . sprintf($this->__('Got: `%1$s`.'), $this->©var->dump($_attachment)));
         }
         if (!is_file($_attachment['path'])) {
             // Perhaps relative?
             if (!is_file(ABSPATH . $_attachment['path'])) {
                 throw $this->©exception($this->method(__FUNCTION__) . '#nonexistent_attachment_path', get_defined_vars(), $this->__('Email failure. Nonexistent attachment `path` value.') . ' ' . sprintf($this->__('Got: `%1$s`.'), $this->©var->dump($_attachment)));
             } else {
                 $_attachment['path'] = ABSPATH . $_attachment['path'];
             }
         }
         if (!$this->©string->is_not_empty($_attachment['name'])) {
             $_attachment['name'] = basename($_attachment['path']);
         }
         if (!$this->©string->is_not_empty($_attachment['encoding'])) {
             $_attachment['encoding'] = 'base64';
         }
         // Default encoding.
         if (!$this->©string->is_not_empty($_attachment['mime_type'])) {
             $_attachment['mime_type'] = $this->©file->mime_type($_attachment['path']);
         }
     }
     unset($_attachment);
     // Just a little housekeeping.
     try {
         $mailer = new \PHPMailer(TRUE);
         $mailer->IsMail();
         $mailer->SingleTo = TRUE;
         $mailer->CharSet = 'UTF-8';
         $mailer->Subject = $mail['subject'];
         $mailer->SetFrom($mail['from_addr'], $mail['from_name']);
         foreach ($mail['recipients'] as $_recipient_addr) {
             $mailer->AddAddress($_recipient_addr);
         }
         unset($_recipient_addr);
         foreach ($mail['headers'] as $_header) {
             $mailer->AddCustomHeader($_header);
         }
         unset($_header);
         // Housekeeping.
         if (!$this->©string->is_html($mail['message'])) {
             $mail['message'] = nl2br(esc_html($mail['message']));
         }
         $mailer->MsgHTML($mail['message']);
         foreach ($mail['attachments'] as $_attachment) {
             $mailer->AddAttachment($_attachment['path'], $_attachment['name'], $_attachment['encoding'], $_attachment['mime_type']);
         }
         unset($_attachment);
         // Housekeeping.
         if ($this->©option->get('mail.smtp')) {
             $mailer->IsSMTP();
             // Flag for SMTP use in this case.
             $mailer->SMTPSecure = $this->©option->get('mail.smtp.secure');
             $mailer->Host = $this->©option->get('mail.smtp.host');
             $mailer->Port = (int) $this->©option->get('mail.smtp.port');
             $mailer->SMTPAuth = (bool) $this->©option->get('mail.smtp.username');
             $mailer->Username = $this->©option->get('mail.smtp.username');
             $mailer->Password = $this->©option->get('mail.smtp.password');
             if ($this->©option->get('mail.smtp.force_from') && $this->©option->get('mail.smtp.from_addr')) {
                 $mailer->SetFrom($this->©option->get('mail.smtp.from_addr'), $this->©option->get('mail.smtp.from_name'));
             }
         }
         do_action('phpmailer_init', $mailer);
         // WP Mail SMTP, and others like it need this.
         $mailer->Send();
         // Send this email message.
     } catch (\phpmailerException $exception) {
         return $this->©error($this->method(__FUNCTION__), get_defined_vars(), $exception->getMessage());
     } catch (\exception $exception) {
         return $this->©error($this->method(__FUNCTION__), get_defined_vars(), $exception->getMessage());
     }
     return TRUE;
     // Default return value.
 }
开发者ID:panvagenas,项目名称:x-related-posts,代码行数:101,代码来源:mail.php

示例15: pgvMail


//.........这里部分代码省略.........
        $extraHeaders .= "\nMime-Version: 1.0";
    }
    $extraHeaders .= "\n";
    if ($mailFormat == "html") {
        //wrap message in html
        $htmlMessage = "";
        $htmlMessage .= "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">";
        $htmlMessage .= "<html xmlns=\"http://www.w3.org/1999/xhtml\">";
        $htmlMessage .= "<head>";
        $htmlMessage .= "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />";
        $htmlMessage .= "</head>";
        $htmlMessage .= "<body dir=\"{$TEXT_DIRECTION}\"><pre>";
        $htmlMessage .= $message;
        //add message
        $htmlMessage .= "</pre></body>";
        $htmlMessage .= "</html>";
        $message = $htmlMessage;
    } else {
        if ($mailFormat == "multipart") {
            //wrap message in html
            $htmlMessage = "--{$boundary}\n";
            $htmlMessage .= "Content-Type: multipart/alternative; \n\tboundary=--{$boundary2}\n\n";
            $htmlMessage = "--{$boundary2}\n";
            $htmlMessage .= "Content-Type: text/plain; \n\tcharset=\"{$CHARACTER_SET}\";\n\tformat=\"flowed\"\nContent-Transfer-Encoding: 8bit\n\n";
            $htmlMessage .= $message;
            $htmlMessage .= "\n\n--{$boundary2}\n";
            $htmlMessage .= "Content-Type: text/html; \n\tcharset=\"{$CHARACTER_SET}\";\n\tformat=\"flowed\"\nContent-Transfer-Encoding: 8bit\n\n";
            $htmlMessage .= "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">";
            $htmlMessage .= "<html xmlns=\"http://www.w3.org/1999/xhtml\">";
            $htmlMessage .= "<head>";
            $htmlMessage .= "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />";
            $htmlMessage .= "</head>";
            $htmlMessage .= "<body dir=\"{$TEXT_DIRECTION}\"><pre>";
            $htmlMessage .= $message;
            //add message
            $htmlMessage .= "</pre>";
            $htmlMessage .= "<img src=\"cid:pgvlogo@pgvserver\" alt=\"\" style=\"border: 0px; display: block; margin-left: auto; margin-right: auto;\" />";
            $htmlMessage .= "</body>";
            $htmlMessage .= "</html>";
            $htmlMessage .= "\n--{$boundary2}--\n";
            $htmlMessage .= "\n--{$boundary}\n";
            $htmlMessage .= getPgvMailLogo();
            $htmlMessage .= "\n\n\n\n--{$boundary}--";
            $message = $htmlMessage;
        }
    }
    // if SMTP mail is set active AND we have SMTP settings available, use the PHPMailer classes
    if ($PGV_SMTP_ACTIVE && ($PGV_SMTP_HOST && $PGV_SMTP_PORT)) {
        require_once 'includes/class.phpmailer.php';
        $mail_object = new PHPMailer();
        $mail_object->IsSMTP();
        $mail_object->SetLanguage('en', 'languages/');
        if ($PGV_SMTP_AUTH && ($PGV_SMTP_AUTH_USER && $PGV_SMTP_AUTH_PASS)) {
            $mail_object->SMTPAuth = $PGV_SMTP_AUTH;
            $mail_object->Username = $PGV_SMTP_AUTH_USER;
            $mail_object->Password = $PGV_SMTP_AUTH_PASS;
        }
        if ($PGV_SMTP_SSL == 'ssl') {
            $mail_object->SMTPSecure = 'ssl';
        } else {
            if ($PGV_SMTP_SSL == 'tls') {
                $mail_object->SMTPSecure = 'tls';
            }
        }
        $mail_object->Host = $PGV_SMTP_HOST;
        $mail_object->Port = $PGV_SMTP_PORT;
        $mail_object->Hostname = $PGV_SMTP_HELO;
        $mail_object->From = $from;
        if (!empty($PGV_SMTP_FROM_NAME) && $from != $PGV_SMTP_AUTH_USER) {
            $mail_object->FromName = $PGV_SMTP_FROM_NAME;
            $mail_object->AddAddress($to);
        } else {
            $mail_object->FromName = $mail_object->AddAddress($to);
        }
        $mail_object->Subject = hex4email($subject, $CHARACTER_SET);
        $mail_object->ContentType = $mailFormatText;
        if ($mailFormat != "multipart") {
            $mail_object->ContentType = $mailFormatText . '; format="flowed"';
            $mail_object->CharSet = $CHARACTER_SET;
            $mail_object->Encoding = '8bit';
        }
        if ($mailFormat == "html" || $mailFormat == "multipart") {
            $mail_object->AddCustomHeader('Mime-Version: 1.0');
            $mail_object->IsHTML(true);
        }
        $mail_object->Body = $message;
        // attempt to send mail
        if (!$mail_object->Send()) {
            echo 'Message was not sent.<br />';
            echo 'Mailer error: ' . $mail_object->ErrorInfo . '<br />';
            return;
        } else {
            // SMTP OK
            return;
        }
    } else {
        // use original PGV mail sending function
        mail($to, hex4email($subject, $CHARACTER_SET), $message, $extraHeaders);
    }
}
开发者ID:bitweaver,项目名称:phpgedview,代码行数:101,代码来源:functions_mail.php


注:本文中的PHPMailer::AddCustomHeader方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。