คำแนะนำคอร์ส:
ฟังก์ชัน PHP mail()
การกำหนดและการใช้งาน
mail() ฟังก์ชันสามารถส่งอีเมล์โดยตรงจากสคริปต์
ถ้าการส่งอีเมล์ถูกตอบรับสำเร็จ ก็จะกลับค่า true ไม่ใช่ก็จะกลับค่า false
สัญลักษณ์คำอธิบายmail(สำคัญ。กำหนดผู้รับอีเมล์mail(messagemail(headersmail(parameters,
) | ประกาศ |
---|---|
คำอธิบาย | to |
สำคัญ。กำหนดผู้รับอีเมล์ | subject |
message | สำคัญ。กำหนดข้อความที่จะส่ง |
headers | สำคัญ。กำหนดหัวข้อที่เพิ่มเติม เช่น From, Cc และ Bcc |
parameters | สำคัญ。กำหนดประมาณที่เพิ่มเติมของโปรแกรม sendmail |
ชื่อ
ใน message ในข้อความที่กำหนดโดยประมาณ บรรทัดต้องแบ่งด้วย LF (\n) และบรรทัดไม่ควรเกิน 70 ตัวอักษร
(Windows ภายใน)เมื่อ PHP ต่อสัมพันธ์กับเซิร์ฟเวอร์ SMTP โดยตรง หากพบจุดประกายที่ต้นบรรทัด จะถูกลบออกไป ในการป้องกันปัญหานี้ ให้แก้ไขจุดประกายเดี่ยวเป็นจุดประกายสอง
<?php $text = str_replace("\n.", "\n..", $text); ?>
คำแนะนำและหมายเหตุ
หมายเหตุ:คุณต้องจำได้ว่า การส่งอีเมล์ที่ถูกตอบรับไม่ได้หมายถึงอีเมล์ได้ถึงจุดปลายทางที่ได้วางแผนไว้
ตัวอย่าง
ตัวอย่าง 1
ส่งอีเมล์ที่เรียบง่าย:
<?php $txt = "First line of text\nSecond line of text"; // หากบรรทัดเกิน 70 ตัวอักษร ใช้ wordwrap() $txt = wordwrap($txt,70); // ส่งอีเมล์ mail("somebody@example.com","My subject",$txt); ?>
ตัวอย่าง 2
ส่งอีเมล์ที่มีหัวข้อที่เพิ่มเติม:
<?php $to = "somebody@example.com"; $subject = "My subject"; $txt = "Hello world!"; $headers = "From: webmaster@example.com" . "\r\n" . "CC: somebodyelse@example.com"; mail($to,$subject,$txt,$headers); ?>
ตัวอย่าง 3
ส่งอีเมล์ HTML ด้วยตัวอย่าง:
<?php $to = "somebody@example.com, somebodyelse@example.com"; $subject = "HTML email"; $message = " <html> <head> <title>HTML email</title> </head> <body> <p>This email contains HTML Tags!</p> <table> <tr> <th>Firstname</th> <th>Lastname</th> </tr> <tr> <td>Bill</td> <td>Gates</td> </tr> </table> </body> </html> "; // ตอนที่ส่งอีเมล์ HTML ให้คงค่า content-type $headers = "MIME-Version: 1.0" . "\r\n"; $headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n"; // มากกว่าหัวข้อ $headers .= 'From: <webmaster@example.com>' . "\r\n"; $headers .= 'Cc: myboss@example.com' . "\r\n"; mail($to,$subject,$message,$headers); ?>