1、PHP中发送邮件的方式
(1)通过mail()函数发送邮件
mail()
配置PHP.ini 邮件信息
需要类似sendmail这样的组件支持
(2)通过socket通讯,使用SMTP传输
socket
连接-->SMTP通讯 -> 获取通讯消息 -> 发送
2、mail函数的使用
mail() 函数允许您从脚本中直接发送电子邮件。
如果邮件的投递被成功地接收,则返回 true,否则返回 false。
mail(to,subject,message,headers,parameters)
to 必需。规定邮件的接收者。
subject 必需。规定邮件的主题。该参数不能包含任何换行字符。
message 必需。规定要发送的消息。
headers 可选。规定额外的报头,比如 From, Cc 以及 Bcc。
parameters 可选。规定 sendmail 程序的额外参数。
php.ini配置
sendmail的支持
3、socket方式发送原理
使用fsockopen函数打开一个Internet连接
fsockopen(string hostname, int port, int [errno], string [errstr], int [timeout]);
这里由于要使用SMTP协议,所以端口号为25。在打开连接成功后,会返回一
个socket句柄,使用它就可以象使用文件句柄一样的。可使用的操作有fputs(),
fgets(),feof(),fclose()
220 服务就绪(在socket连接成功时,会返回此信息)
221 正在处理
250 请求邮件动作正确,
354 开始发送数据,结束以 .
500 语法错误,命令不能识别
550 命令不能执行,邮箱无效
552 中断处理:用户超出文件空间
<?php
requir_once('email.class.php');
//使用mail需要配置邮件服务器
} else{
$smtp=new smtp("smtp.126.com","25",true,"username",“password”);
$smtp->debug=true;
}
?>