CodeIgniter拥有功能强大的Email类。以下为利用其发送邮件的代码。
关于CI的Email类的详情请参考:http://codeigniter.org.cn/user_guide/libraries/email.html
文件路径为/application/controllers/welcome.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Welcome extends CI_Controller { public function index() { $this->load->library('email'); //加载CI的email类 //以下设置Email参数 $config['protocol'] = 'smtp'; $config['smtp_host'] = 'smtp.163.com'; $config['smtp_user'] = 'mwsoft'; $config['smtp_pass'] = '******'; $config['smtp_port'] = '25'; $config['charset'] = 'utf-8'; $config['wordwrap'] = TRUE; $config['mailtype'] = 'html'; $this->email->initialize($config); //以下设置Email内容 $this->email->from('hebmlym@163.com', 'Mwsoft'); $this->email->to('43352901@qq.com'); $this->email->subject('Email Test'); $this->email->message('<font color=red>Testing the email class.</font>'); $this->email->attach('applicationcontrollers1.jpeg'); //相对于index.php的路径 $this->email->send(); //echo $this->email->print_debugger(); //返回包含邮件内容的字符串,包括EMAIL头和EMAIL正文。用于调试。 } }
在加载Email类之后需要配置Email参数。配置完成之后使用$this->email->initialize($config)函数来初始化参数。
再设置邮件的内容,最后调用$this->email->send()发送邮件
。
其中要注意如果添加附件时,附件的地址是相对CI根目录下的index.php的路径。
如果不想采用初始化的方式,可以直接修改system/libraries/Email.php