CodeIgniter使用smtp服务发送html邮件的方法

内容摘要
本文实例讲述了CodeIgniter使用smtp服务发送html邮件的方法。分享给大家供大家参考。具体如下:
codeigniter 提供的email类,用于发送邮件,
wiki地址: http://codeigniter.org.cn
文章正文

本文实例讲述了CodeIgniter使用smtp服务发送html邮件的方法。分享给大家供大家参考。具体如下:

codeigniter 提供的email类,用于发送邮件,

wiki地址: http://codeigniter.org.cn/user_guide/libraries/email.html

实际开发中遇到以下几个问题,总结一下:

1. wiki中说明是可以将配置文件单独提出来,email.php 放置到config文件夹下,

对于email.php 的配置,需要说明的几点:

1) 一般测试使用的smtp服务,如126、163 的邮箱均采用此协议,故 protocol 选择 smtp

2) 企业营销邮件一般都是html的,此时,需要配置mailtype 为 html

示例下我写的email.php 配置文件:

<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed'); 
/* 
|------------------------------------ 
| Email Config 
|------------------------------------ 
| by chaichunyan 
| 
*/ 
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'smtp.126.com';
$config['smtp_user'] = 'xxx@126.com';
$config['smtp_pass'] = 'xxx';
$config['smtp_port'] = '25';
$config['charset'] = 'utf-8';
$config['wordwrap'] = TRUE;
$config['mailtype'] = 'html';

2) 发送的html 属性值使用的html,需要处理一下

$send_msg = str_replace("\"", "", $msg); 
$this->email->message($send_msg);  

3) 开发时,建议打开debug信息,因为如果你频繁使用126的邮箱对外发送邮件,
一来可能会被认为是垃圾邮件,更主要的是可能被126封杀掉 :(

希望本文所述对大家基于CodeIgniter的php程序设计有所帮助。


代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!