欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

BAE环境发送邮件

程序员文章站 2022-06-10 23:06:24
...

BAE环境禁用了mail函数,发送邮件可以通过smtp方式发送 参考如下内容: 1 BAE中用socket系列函数通过smtp协议发送邮件 2 PHP SOCKET()方式发送邮件 3 PHPMailer 其中,1可以发送邮件,但太简单了,最基本的邮件通信内容,没有收件人和标题、内容 2和3总也折

BAE环境禁用了mail函数,发送邮件可以通过smtp方式发送

参考如下内容:
1 BAE中用socket系列函数通过smtp协议发送邮件
2 PHP SOCKET()方式发送邮件
3 PHPMailer

其中,1可以发送邮件,但太简单了,最基本的邮件通信内容,没有收件人和标题、内容
2和3总也折腾不出,作罢

改良一下1的代码,可以增加相应的内容:



$server = "smtp.163.com";
$port = 25;//默认25
$username = "YOURNAME@163.com" ;
$password = "YOURPASSWORD";//密码
$sendto = "TOWHO@gmail.com";//邮件接收者地址
$subject = "test title2";
$content = "test content2";

$header = "MIME-Version:1.0\r\n";
$header .= "To: ".$sendto."\r\n";
$header .= "From: $username\r\n";
$header .= "Subject: ".$subject."\r\n";

$data = $header."\r\n".$content;//邮件内容

$sock = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
if(socket_connect($sock,$server,$port)===false)socket_strerror(socket_last_error());
echo socket_read($sock,100)."";
socket_write($sock,"HELO lyz810\r\n");
echo socket_read($sock,100)."";
socket_write($sock,"AUTH LOGIN\r\n");
echo socket_read($sock,100)."";
socket_write($sock,base64_encode($username)."\r\n");
echo socket_read($sock,100)."";
socket_write($sock,base64_encode($password)."\r\n");
echo socket_read($sock,100)."";
socket_write($sock,"MAIL FROM:\r\n");
echo socket_read($sock,100)."";
socket_write($sock,"RCPT TO:\r\n");
echo socket_read($sock,100)."";
socket_write($sock,"DATA\r\n");
echo socket_read($sock,100)."";
socket_write($sock,$data."\r\n.\r\n");
socket_write($sock,"QUIT");
echo socket_read($sock,100)."";