php教程

超轻量级php框架startmvc

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

更新时间:2020-03-04 19:27:01 作者:startmvc
本文实例讲述了CodeIgniter使用smtp服务发送html邮件的方法。分享给大家供大家参考。具体如

本文实例讲述了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程序设计有所帮助。

CodeIgniter smtp服务 html邮件