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 相关文章推荐
php5编程中的异常处理详细方法介绍
Jul 29 PHP
PHP中常用数组处理方法实例分析
Aug 30 PHP
php MYSQL 数据备份类
Jun 19 PHP
PHP5 面向对象(学习记录)
Dec 02 PHP
PHP的5个安全措施小结
Jul 17 PHP
编写安全 PHP应用程序的七个习惯深入分析
Jun 08 PHP
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
Jun 29 PHP
PHP程序员基本要求和必备技能
May 09 PHP
Thinkphp3.2实用篇之计算型验证码示例
Feb 09 PHP
详解Yii2.0 rules验证规则集合
Mar 21 PHP
PHP下用Swoole实现Actor并发模型的方法
Jun 12 PHP
PHP 代码简洁之道(小结)
Oct 16 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
yii2.0实现创建简单widgets示例
2016/07/18 PHP
PHP程序员必须知道的两种日志实例分析
2020/05/14 PHP
JS实现图片翻书效果示例代码
2013/09/09 Javascript
兼容主流浏览器的iframe自适应高度js脚本
2014/01/10 Javascript
jQuery插件ajaxFileUpload实现异步上传文件效果
2015/04/14 Javascript
javascript制作幻灯片(360度全景图片)
2015/07/28 Javascript
使用jQuery获取data-的自定义属性
2015/11/10 Javascript
js+canvas简单绘制圆圈的方法
2016/01/28 Javascript
基于jQuery实现动态搜索显示功能
2016/05/05 Javascript
jQuery Dialog对话框事件用法实例分析
2016/05/10 Javascript
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
2019/04/10 jQuery
layui关闭弹窗后刷新主页面和当前更改项的例子
2019/09/06 Javascript
[01:31:22]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第二场 1月10日
2021/03/11 DOTA
详谈Python中列表list,元祖tuple和numpy中的array区别
2018/04/18 Python
pandas DataFrame的修改方法(值、列、索引)
2019/08/02 Python
Django获取该数据的上一条和下一条方法
2019/08/12 Python
通过celery异步处理一个查询任务的完整代码
2019/11/19 Python
py-charm延长试用期限实例
2019/12/22 Python
pytorch实现从本地加载 .pth 格式模型
2020/02/14 Python
Python web如何在IIS发布应用过程解析
2020/05/27 Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
2020/06/06 Python
详解pandas获取Dataframe元素值的几种方法
2020/06/14 Python
vivo智能手机官方商城:vivo
2016/09/22 全球购物
介绍一下write命令
2014/08/10 面试题
房地产销售大学生自我评价分享
2013/11/11 职场文书
办公室保洁员岗位职责
2013/12/02 职场文书
员工培训邀请函
2014/01/11 职场文书
中英文求职信范文
2014/01/27 职场文书
幸福家庭事迹材料
2014/02/03 职场文书
大学军训感言600字
2014/02/25 职场文书
元旦晚会主持词
2014/03/24 职场文书
医院标语大全
2014/06/23 职场文书
四风个人对照检查材料思想汇报
2014/09/25 职场文书
四风问题对照检查材料整改措施
2014/09/27 职场文书
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
2021/04/12 Python
Java Spring读取和存储详细操作
2022/08/05 Java/Android