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 相关文章推荐
整理的一些实用WordPress后台MySQL操作命令
Jan 07 PHP
基于Zend的Captcha机制的应用
May 02 PHP
preg_match_all使用心得分享
Jan 31 PHP
thinkphp实现多语言功能(语言包)
Mar 04 PHP
php中preg_match的isU代表什么意思
Oct 01 PHP
PHP 5.6.11 访问SQL Server2008R2的几种情况详解
Aug 08 PHP
PHP 实现浏览记录并按日期分组
May 11 PHP
Yii2第三方类库插件Imagine的安装和使用
Jul 06 PHP
PHP实现随机数字、字母的验证码功能
Aug 01 PHP
Laravel中为什么不使用blpop取队列详析
Aug 01 PHP
PHP+redis实现微博的拉模型案例详解
Jul 10 PHP
Laravel5.1 框架响应基本用法实例分析
Jan 04 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(5) 类和对象
2010/02/16 PHP
判断PHP数组是否为空的代码
2011/09/08 PHP
关于PHP session 存储方式的详细介绍
2013/06/25 PHP
PHP编程风格规范分享
2014/01/15 PHP
PHP匿名函数(闭包函数)详解
2019/03/22 PHP
获取Javscript执行函数名称的方法
2006/12/22 Javascript
javascript 操作cookies及正确使用cookies的属性
2009/10/15 Javascript
Javascript 面向对象 命名空间
2010/05/13 Javascript
JS获取页面input控件中所有text控件并追加样式属性
2013/02/25 Javascript
jQuery拖动div、移动div、弹出层实现原理及示例
2014/04/08 Javascript
Vue.js 表单校验插件
2016/08/14 Javascript
Html5 js实现手风琴效果
2020/04/17 Javascript
vue-router 学习快速入门
2017/03/01 Javascript
JavaScript使用readAsDataURL读取图像文件
2017/05/10 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
Vue实现验证码功能
2019/12/03 Javascript
Vue的Eslint配置文件eslintrc.js说明与规则介绍
2020/02/03 Javascript
javascript 数组(list)添加/删除的实现
2020/12/17 Javascript
[40:55]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#4Newbee VS Fnatic
2016/03/03 DOTA
python抓取豆瓣图片并自动保存示例学习
2014/01/10 Python
以一段代码为实例快速入门Python2.7
2015/03/31 Python
Python 正则表达式实现计算器功能
2017/04/29 Python
利用标准库fractions模块让Python支持分数类型的方法详解
2017/08/11 Python
Python 查看文件的编码格式方法
2017/12/21 Python
python多进程并行代码实例
2019/09/30 Python
python之生成多层json结构的实现
2020/02/27 Python
一款基于css3的动画按钮代码教程
2014/11/23 HTML / CSS
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
校优秀毕业生主要事迹
2014/05/26 职场文书
大学生考试作弊被抓检讨书
2014/12/27 职场文书
亲属关系公证书样本
2015/01/23 职场文书
2015年初中生自我评价范文
2015/03/03 职场文书
2016党员党课心得体会
2016/01/07 职场文书
Python中super().__init__()测试以及理解
2021/12/06 Python
Go归并排序算法的实现方法
2022/04/06 Golang
win10壁纸在哪个文件夹 win10桌面背景图片文件位置分享
2022/08/05 数码科技