PHP使用pear实现mail发送功能 windows环境下配置pear


Posted in PHP onApril 15, 2016

PHP发邮件可以用其自带mail()函数,但是这个函数很不好使,需要配置邮件服务器,并且不支持smtp验证,在很多场合无法正常的工作. 找了个代码发邮件,但总是出错,我在这里用PEAR的Mail类,使用smtp发邮件.

首先安装,我推陈用最新版的PHP5,因为我用PHP4出现了很多问题,大多是因为那些封装好的类版本太高,与PHP4不兼容的原故吧.
安装方法:
1.在php目录中双击go-pear.bat。
2.按照提示输入一些设置信息,主要是问直接访问外网,还是用代理,若无代理服务器则直接回车,我是直接按回车.
3.然后会提示一些包和PHP绑定,选择Y 。
4.然后安装基本包和提示安装成功,就这么简单。
5.打开windows目录下的php.ini文件,然后查找到如下的地方:
; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
;
; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"

把最后一行的注释去掉,然后把后面路径改成你的PEAR路径,例如:
include_path = ".;c:\php\pear\"
保存PHP.INI,然后重新启动APACHE即可。

现在PEAR已经安好了,我们要用到的类放在php目录下的pear文件夹下,但是现在没有多少可用的类,我们要去网上下载并安装.

在你的PHP根目录中可以找到PEAR.bat文件(执行上边的安装才会有这个东西),这是管理pear的命令,在CMD中使用,要设置环境变量PATH,或双击生成的EV_XXX.REG文件。它的部分命令功能如下:
1、安?:

从网络安装一个pear类库:

pear install packagename

下载 packages 但不安?:

pear download packagename

pear download-all

安?已下载的package:

pear install filename.tgz

2、列表:

目前pear网站上所有可取得pear类库列表:

pear remote-list

列出已安?package:

pear list

列出可以升?的package:

pear list-upgrades

3、更新(升?):

更新package:

pear upgrade packagename

pear upgrade-all

4、移除:

?h除已安?的package:

pear uninstall packagename

我们从cmd进入PHP目录,执行pear install mail
如果安装过程提示某些库没有安装,则继续安装这些库如图:

PHP使用pear实现mail发送功能 windows环境下配置pear

这继续安装:

PHP使用pear实现mail发送功能 windows环境下配置pear

出来一些信息,会提示安装成功,这时pear目录下多出来一个mail目录,同时有一个mail.php,这是我们一会要引用的文件.
下边是我们用来发邮件的代码:

<?
require_once 'Mail.php';
flush();

$conf['mail'] = array(
    'host'   => 'mail.nenu.edu.cn',  //smtp服务器地址,可以用ip地址或者域名
    'auth'   => true,         //true表示smtp服务器需要验证,false代码不需要
    'username' => 'guanhf844',      //用户名 
    'password' => '你的密码'        //密码
);


$headers['From']  = 'guanhf844@nenu.edu.cn';       //发信地址
$headers['To']   = 'chf007server@163.com';       //收信地址
$headers['Subject'] = 'test mail send by php';     //邮件标题
$mail_object = &Mail::factory('smtp', $conf['mail']);  

$body = '<<< MSG                    
hello world!!!
MSG';
//邮件正文
$mail_res = $mail_object->send($headers['To'], $headers, $body);    //发送

if( PEAR::isError($mail_res) ){             //检测错误
  die($mail_res->getMessage());
}
echo 'Send finished.';
?>

经测试发送成功,速度挺快的,别的邮箱没有测试。

以上就是PHP使用pear实现mail发送功能的全部代码,希望对大家的学习有所帮助。

PHP 相关文章推荐
php防攻击代码升级版
Dec 29 PHP
打造超酷的PHP数据饼图效果实现代码
Nov 23 PHP
PHP 利用Mail_MimeDecode类提取邮件信息示例
Jan 26 PHP
ThinkPHP权限认证Auth实例详解
Jul 22 PHP
PHP分页类集锦
Nov 18 PHP
Yii框架调试心得--在页面输出执行sql语句
Dec 25 PHP
PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)
Sep 11 PHP
PHP mysqli事务操作常用方法分析
Jul 22 PHP
centos7上编译安装php7以php-fpm方式连接apache
Nov 08 PHP
php创建多级目录与级联删除文件的方法示例
Sep 12 PHP
Yii框架模拟组件调用注入示例
Nov 11 PHP
PHP中用Trait封装单例模式的实现
Dec 18 PHP
php生成图片验证码的方法
Apr 15 #PHP
PHP抓取淘宝商品的用户晒单评论+图片+搜索商品列表实例
Apr 14 #PHP
php上传大文件设置方法
Apr 14 #PHP
什么是OneThink oneThink后台添加插件步骤
Apr 13 #PHP
java模拟PHP的pack和unpack类
Apr 13 #PHP
php远程下载类分享
Apr 13 #PHP
Thinkphp和onethink实现微信支付插件
Apr 13 #PHP
You might like
可定制的PHP缩略图生成程式(需要GD库支持)
2007/03/06 PHP
PHP 简单数组排序实现代码
2009/08/05 PHP
php实现图片局部打马赛克的方法
2015/02/11 PHP
windows server 2008/2012安装php iis7 mysql环境搭建教程
2016/06/30 PHP
IE6背景图片不缓存问题解决方案及图片使用策略多个方法小结
2012/05/14 Javascript
JS判断页面加载状态以及添加遮罩和缓冲动画的代码
2012/10/11 Javascript
js中split函数的使用方法说明
2013/12/26 Javascript
javascript简单实现类似QQ头像弹出效果的方法
2015/08/03 Javascript
JS实现新浪微博效果带遮罩层的弹出框代码
2015/10/12 Javascript
JavaScript实现简单Tip提示框效果
2016/04/20 Javascript
Bootstrap学习笔记之css样式设计(1)
2016/06/07 Javascript
Node.js的Koa框架上手及MySQL操作指南
2016/06/13 Javascript
20分钟打造属于你的Bootstrap站点
2016/07/27 Javascript
JS简单实现禁止访问某个页面的方法
2016/09/13 Javascript
浅谈Vue下使用百度地图的简易方法
2018/03/23 Javascript
详解jQuery设置内容和属性
2019/04/11 jQuery
Vue实现拖放排序功能的实例代码
2019/07/08 Javascript
vue 解决computed修改data数据的问题
2019/11/06 Javascript
vue webpack build资源相对路径的问题及解决方法
2020/06/04 Javascript
JS实现4位随机验证码
2020/10/19 Javascript
原生JavaScript实现贪吃蛇游戏
2020/11/04 Javascript
[00:32]2018DOTA2亚洲邀请赛出场——VP
2018/04/04 DOTA
通过python下载FTP上的文件夹的实现代码
2013/02/10 Python
老生常谈Python基础之字符编码
2017/06/14 Python
对numpy中二进制格式的数据存储与读取方法详解
2018/11/01 Python
Python 面向对象静态方法、类方法、属性方法知识点小结
2020/03/09 Python
python中Array和DataFrame相互转换的实例讲解
2021/02/03 Python
Orvis官网:自1856年以来,优质服装、飞钓装备等
2018/12/17 全球购物
体育教师自我鉴定
2014/02/12 职场文书
销售员未完成销售业绩的检讨书
2014/10/12 职场文书
商务宴请邀请函范文
2015/02/02 职场文书
2015年毕业实习工作总结
2015/05/29 职场文书
go设置多个GOPATH的方式
2021/05/05 Golang
python实现简易自习室座位预约系统
2021/06/30 Python
Python机器学习应用之基于线性判别模型的分类篇详解
2022/01/18 Python
Python中requests库的用法详解
2022/06/05 Python