ci 框架发送邮箱

定义数据

$config = array(
    ‘protocol‘ =>‘smtp‘,
    ‘smtp_host‘=>‘ssl://smtp.163.com‘,
    ‘smtp_user‘=>‘[email protected]‘,
    ‘smtp_pass‘=>‘***********‘,
    ‘smtp_port‘=>465,
    ‘smtp_timeout‘=>30,
    ‘mailtype‘=>‘html‘,
    ‘charset‘=>‘utf-8‘,
    ‘wordwrap‘=>TRUE,
    ‘newline‘=>PHP_EOL,
    ‘crlf‘=>"\r\n"
);

上述数据可以存放在config文件夹中以email.php命名进行存放

$this->load->library(‘email‘);
$this->email->set_newline("\r\n");
$this->email->from(‘[email protected]‘, ‘白骑士‘);
$this->email->to(‘[email protected]‘);
$this->email->subject(‘北京****有限公司‘); // 发送标题
$this->email->message($send_msg); // 内容
$this->email->send();
$status = $this->email->print_debugger();
 if($status){
       echo json_encode(array(‘status‘=>1,‘message‘=>‘验证码发送成功,请注意查收‘));;return false;
} else {
       echo json_encode(array(‘status‘=>0,‘message‘=>‘验证码发送失败,请重新发送‘));return false;
}

需注意的是 若只需发送文字$coonfig[‘wordwrap‘] = ‘text‘      需要发送html模板的时候$coonfig[‘wordwrap‘] = ‘html‘ ;

填写腾讯邮箱开启POP3/SMTP服务时的授权码,即核对密码正确 在邮箱设置 账号里面

即在email中编码和我们使用的编码不一样,会导致标题输入过长的时候会导致乱码

在email类中 在subject方法中将$subject = $this->_prep_q_encoding($subject); 改为$subject = ‘=?‘. $this->charset .‘?B?‘. base64_encode($subject) .‘?=‘;    已验证

网上还有一种方法

在CI的Email类1297行有一行代码:

  1. $limit = 75 - 7 - strlen($this->charset);

我把代码中的75改成:

  1. $limit = 750 - 7 - strlen($this->charset);

未经验证  仅作参考

时间: 2024-09-30 21:11:46

ci 框架发送邮箱的相关文章

CI框架源码阅读笔记1 - 环境准备、基本术语和框架流程

最开始使用CI框架的时候,就打算写一个CI源码阅读的笔记系列,可惜虎头蛇尾,一直没有行动.最近项目少,总算是有了一些时间去写一些东西.于是准备将之前的一些笔记和经验记录下来,一方面权作备忘,另一方面时刻提醒自己:借鉴和学习才有出路,忘记过去意味着背叛! 基本术语说明 在本文开始之前,有必要对文中反复出现的术语做一个简单的说明,如果你对这一部分已经熟谙,完全可以略过.本文中反复出现和提及的术语包括: 前端控制器(Front Controller): 用于集中控制用户的所有请求的组件,将用户的请求发

关于PHP的CI框架

今天复习的CI框架,又重新写了一些关于CI 框架的琐碎 1.cakePHP,thinkPHP 2.CI框架CI中规定http://localhost/myci2/控制器名/方法名 http://localhost/myci2/welcome/index 3.MVC(model view controller 模型,视图,控制器) 4.设计模式(design pattern),使逻辑更清晰 5.route(路由) 6.redirect('这写的是跳转的路径'):重定向,不能传参,不支持第二个参数

CI框架源代码阅读笔记6 扩展钩子 Hook.php

CI框架同意你在不改动系统核心代码的基础上加入或者更改系统的核心功能(如重写缓存.输出等). 比如,在系统开启hook的条件下(config.php中$config['enable_hooks'] = TRUE;).通过加入特定的钩子,能够让系统在特定的时刻触发特定的脚本: $hook['post_system'] = array( 'class' => 'frameLog', 'function' => 'postLog', 'filename' => 'post_system.php

CI框架浅析(全篇)

业余花了点时间看看CodeIgniter框架(简称CI),CI目前的稳定版本是 3.X,4.0版本已经出来了,但还在测试中,所以我分析的还是 3.x 版本. CI是一个很轻便的框架,整个下载包也就2M多,而且使用起来方便快捷,适用于一些简单的功能开发,以及做app 接口. 该框架整个流程图如下: li.li1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Hannotate SC" } span.s1 { } span.s2 { }

CI框架 .htaccess 隐藏url中index.php的解决

CodeIgniter(以下简称"CI")是一款国外优秀的PHP轻量级MVC框架,它支持PHP4和PHP5,是开发中小型可拓展性需求高的Web应用程序的利器.目前你所见到的这个博客程序,正是采用CI进行的编写. 秉承MVC架构的思想,CI中的所有控制器都需要经过单点入口文件index.php(默认)来加载调用.也就是说,在默认情况下,所有CI开发项目的URL都形如以下这种形式: http://localhost/index.php/blog/logs/this_is_a_test_en

ci框架操作数据库基本方法

授课过程中如果涉及到文件夹或目录时,可使用缩进进行演示: application |-----libraries |-----xxx_helper.php system |-----libraries |-----url_helper.php --------------------------------------------------------------------------------------------------------------------------------

CI框架篇之视图篇--载入(1)

创建视图 创建视图文件很简单,只需要建立后缀名为'.php'的文件, 然后保存文件到 application/views/ 文件夹即可 当然,随着工程的大小,你有必要对很多的视图根据控制器进行归类, 然后分不同的文件夹存储: 例如: application/views/home   表示定义的前台主视图 application/views/admin   表示定义的后台主视图 载入视图 一个视图就是一个网页,或是网页的部分,如头部,底部,侧边栏等等.事实上,如果你需要 这种层次类型,视图可以很灵

CI框架整合微信公共平台接口

#CI框架控制器 <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); /*** CI框架整合微信 2014.9.15 作者:黄国金 **/ define('TOKEN', 'hgj123'); class Weixin extends CI_Controller { #构造函数 function __construct() { #调用父类的构造函数 parent::__construct(); #以

CI框架 -- 核心文件 之 Hooks.php

CI框架可以实现在不修改系统核心文件的基础上来改变或增加系统的核心运行功能,那就是Hook,看看CI有哪些钩子: pre_system系统执行的早期调用.仅仅在benchmark 和 hooks 类 加载完毕的时候. 没有执行路由或者其它的过程. pre_controller在调用你的任何控制器之前调用.此时所用的基础类,路由选择和安全性检查都已完成. post_controller_constructor在你的控制器实例化之后,任何方法调用之前调用. post_controller在你的控制器