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的FTP学习(一)
Oct 09 PHP
php 缩略图实现函数代码
Jun 23 PHP
PHP的SQL注入过程分析
Jan 06 PHP
file_get_contents获取不到网页内容的解决方法
Mar 07 PHP
如何使用FireFox插件FirePHP调试PHP
Jul 23 PHP
ThinkPHP使用心得分享-分页类Page的用法
May 15 PHP
PHP小技巧之函数重载
Jun 02 PHP
PHP Yii框架之表单验证规则大全
Nov 16 PHP
php性能分析之php-fpm慢执行日志slow log用法浅析
Oct 17 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
Sep 20 PHP
php解决安全问题的方法实例
Sep 19 PHP
XAMPP升级PHP版本实现步骤解析
Sep 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
玩转图像函数库―常见图形操作
2006/09/03 PHP
php array的学习笔记
2012/05/16 PHP
非常好用的Zend Framework分页类
2014/06/25 PHP
TP5框架实现自定义分页样式的方法示例
2020/04/05 PHP
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
2010/01/12 Javascript
深入理解JavaScript作用域和作用域链
2011/10/21 Javascript
使用CSS和jQuery模拟select并附提交后取得数据的代码
2013/10/18 Javascript
用JS将搜索的关键字高亮显示实现代码
2013/11/08 Javascript
jquery map方法使用示例
2014/04/23 Javascript
jquery siblings获取同辈元素用法实例分析
2016/07/25 Javascript
ES6下React组件的写法示例代码
2017/05/04 Javascript
Jquery获取radio选中的值
2017/05/05 jQuery
基于JavaScript中标识符的命名规则介绍
2018/01/06 Javascript
JavaScript学习总结(一) ECMAScript、BOM、DOM(核心、浏览器对象模型与文档对象模型)
2018/01/07 Javascript
使用D3.js+Vue实现一个简单的柱形图
2018/08/05 Javascript
详解Node.js amqplib 连接 Rabbit MQ最佳实践
2019/01/24 Javascript
javascript数据类型中的一些小知识点(推荐)
2019/04/18 Javascript
React中使用外部样式的3种方式(小结)
2019/05/28 Javascript
js实现消灭星星(web简易版)
2020/03/24 Javascript
[02:15]2014DOTA2国际邀请赛 赛后退役选手回顾
2014/08/01 DOTA
Python绘制的二项分布概率图示例
2018/08/22 Python
Python实现微信自动好友验证,自动回复,发送群聊链接方法
2019/02/21 Python
python 堆和优先队列的使用详解
2019/03/05 Python
浅谈PySpark SQL 相关知识介绍
2019/06/14 Python
Python解析命令行读取参数之argparse模块
2019/07/26 Python
利用Python校准本地时间的方法教程
2019/10/31 Python
用Python绘制漫步图实例讲解
2020/02/26 Python
django model object序列化实例
2020/03/13 Python
萌新HTML5 入门指南(二)
2020/11/09 HTML / CSS
Nisbets爱尔兰:英国最大的厨房和餐饮设备供应商
2019/01/26 全球购物
Tea Collection官网:一家位于旧金山的童装公司
2020/08/07 全球购物
2014年上半年工作自我评价
2014/01/18 职场文书
亮化工程实施方案
2014/03/17 职场文书
三八妇女节演讲稿
2014/05/27 职场文书
班级文化建设标语
2014/06/23 职场文书
python常见的占位符总结及用法
2021/07/02 Python