cari
Rumahphp教程php手册如何正确运用PHP发送邮件函数

如何正确运用PHP发送邮件函数

Jun 13, 2016 am 11:09 AM
mailphpkodfungsihantarbagaimanapermohonanbetuldaripadaContohgunamel

PHP发送邮件函数的应用代码示例:

  1. #echo send_mail($_POST["email"],$tosubject,$_POST["errortext"]);  
  2. echo send_mail('someone@126.com','only a test mail for test php mail function','一封垃圾邮件');  
  3. echo time();  
  4.  
  5. function send_mail($to, $subject = 'No subject', $body) {  
  6. $loc_host = "mail.server"; //发信计算机名,可随意  
  7. $smtp_acc = "smp@163.com"; //Smtp认证的用户名  
  8. $smtp_pass="pwdpwd"; //Smtp认证的密码,一般等同pop3密码  
  9. $smtp_host="smtp.163.com"; //SMTP服务器地址,类似 smtp.tom.com  
  10. $from="smp@163.com"; //发信人Email地址,你的发信信箱地址  
  11. $deliver=$smtp_acc; //回复到指定邮箱  
  12. $headers = "Content-Type: text/plain; charset="gb2312"rnContent-Transfer-Encoding: base64";  
  13. $lb="rn"; //linebreak   
  14. $hdr = explode($lb,$headers); //解析后的hdr  
  15. if($body) {$bdy = preg_replace("/^./","..",explode($lb,$body));}//解析后的Body  
  16.  
  17. $smtp = array(  
  18. //1、EHLO,期待返回220或者250  
  19. array("EHLO ".$loc_host.$lb,"220,250","HELO error: "),  
  20. //2、发送Auth Login,期待返回334  
  21. array("AUTH LOGIN".$lb,"334","AUTH error:"),  
  22. //3、发送经过Base64编码的用户名,期待返回334  
  23. array(base64_encode($smtp_acc).$lb,"334","AUTHENTIFICATION error : "),  
  24. //4、发送经过Base64编码的密码,期待返回235  
  25. array(base64_encode($smtp_pass).$lb,"235","AUTHENTIFICATION error : "));  
  26. //5、发送Mail From,期待返回250  
  27. $smtp[] = array("MAIL FROM: ".$from.">".$lb,"250","MAIL FROM error: ");  
  28. //6、发送Rcpt To。期待返回250  
  29. $smtp[] = array("RCPT TO: ".$to.">".$lb,"250","RCPT TO error: ");  
  30. //7、发送DATA,期待返回354  
  31. $smtp[] = array("DATA".$lb,"354","DATA error: ");  
  32. //8.0、发送From  
  33. $smtp[] = array("From: ".$deliver.$lb,"","");  
  34. //8.2、发送To  
  35. $smtp[] = array("To: ".$to.$lb,"","");  
  36. //8.1、发送标题  
  37. $smtp[] = array("Subject: ".$subject.$lb,"","");  
  38. //8.3、发送其他Header内容  
  39. foreach($hdr as $h) {$smtp[] = array($h.$lb,"","");}  
  40. //8.4、发送一个空行,结束Header发送  
  41. $smtp[] = array($lb,"","");  
  42. //8.5、发送信件主体  
  43. if($bdy) {foreach($bdy as $b) {$smtp[] = array(base64_encode($b.$lb).$lb,"","");}}  
  44. //9、发送“.”表示信件结束,期待返回250  
  45. $smtp[] = array(".".$lb,"250","DATA(end)error: ");  
  46. //10、发送Quit,退出,期待返回221  
  47. $smtp[] = array("QUIT".$lb,"221","QUIT error: ");  
  48.  
  49. //打开smtp服务器端口  
  50. $fp = @fsockopen($smtp_host, 25);  
  51. if (!$fp) echo "b>Error:b> Cannot conect to ".$smtp_host."br>";  
  52. while($result = @fgets($fp, 1024)){if(substr($result,3,1) == " ") { break; }}  
  53.  
  54. $result_str="";  
  55. //发送smtp数组中的命令/数据  
  56. foreach($smtp as $req){  
  57. //发送信息  
  58. @fputs($fp, $req[0]);  
  59. //如果需要接收服务器返回信息,则  
  60. if($req[1]){  
  61. //接收信息  
  62. while($result = @fgets($fp, 1024)){  
  63. if(substr($result,3,1) == " ") { break; }  
  64. };  
  65. if (!strstr($req[1],substr($result,0,3))){  
  66. $result_str.=$req[2].$result."br>";  
  67. }  
  68. }  
  69. }  
  70. //关闭连接  
  71. @fclose($fp);  
  72. return $result_str;  
  73. }  

希望上面这段代码示例能让大家充分掌握PHP发送邮件函数的运用。
 


Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).