2011-04-07 17 views

回答

0

你嘗試了CI的社區receipt或檢查出guide?並且here是關於如何將PHPMailer安裝爲CI插件的一些描述。

您也可以嘗試標準的PHP函數mail

有一天,我已經寫了這個功能看起來像這樣的包裝:

function sendmail($from, $to, $subject, $body, $isHtml = false, $encoding = 'windows-1251', $headers = -1) { 
    GLOBAL $GLOBAL_SITE_DATA; 
    $headersGlue = "\r\n"; 
    if (empty($encoding)) { 
    $encoding = 'windows-1251'; 
    } 
    $bracketPos = strpos($from,' 'Type here whatever you want!', 
    'From' => $from, 
    'Reply-To' => $replyTo, 
    'Return-Path' => $returnPath, 
    'MIME-Version' => '1.0', 
    'Content-Transfer-Encoding' => '8bit',//'base64', 
    'Content-Type' => 'text/'.($isHtml ? 'html':'plain').'; charset='.$encoding, 
); 
    if (sizeof($headers) && $headers != -1) { 
    foreach ($defaultHeaders as $headerKey => $header) { 
     if (!isset($headers[$headerKey])) { 
     $headers[$headerKey] = $header; 
     } 
    } 
    } 
    else if ($headers == -1) { 
    $headers = $defaultHeaders; 
    } 

    $sHeaders = false; $sendWithHeaders = false; 
    if (sizeof($headers) && $headers != -1) { 
    array_walk($headers, create_function('&$v,$k', '$v = $k.": ".$v;')); 
    $sHeaders = implode($headersGlue, $headers).$headersGlue; 
    $sendWithHeaders = true; 
    } 
    return mail($to, '=?'.$encoding.'?B?'.base64_encode($subject).'?=', $body, ($sendWithHeaders ? $sHeaders : NULL)); 
}

你想改變默認的編碼(窗口-1251是西裏爾字母)和可能,做了一些改進。

希望它有幫助。