PHP mail() फ़ंक्शन

परिभाषा और उपयोग

mail() फ़ंक्शन आपको स्क्रिप्ट से सीधे ईमेल भेजने की अनुमति देता है。

यदि ईमेल का भेजन सफलता से स्वीकार किया जाता है, तो true बदला जाएगा, अन्यथा false बदला जाएगा。

व्याकरण

mail(प्राप्तकर्ता,विषय,संदेश,शीर्षक,पैरामीटर)
पैरामीटर वर्णन
प्राप्तकर्ता आवश्यक। ईमेल के प्राप्तकर्ता को निर्दिष्ट करता है。
विषय आवश्यक। ईमेल का विषय निर्दिष्ट करता है। इस पैरामीटर में कोई निर्वाधार पंक्ति नहीं हो सकता है。
संदेश आवश्यक। भेजने वाले संदेश निर्दिष्ट करता है。
शीर्षक आवश्यक। अतिरिक्त शीर्षक निर्दिष्ट करता है, जैसे From, Cc और Bcc。
पैरामीटर आवश्यक। sendmail कार्यक्रम के अतिरिक्त पैरामीटर निर्दिष्ट करता है。

व्याख्या

में संदेश पैरामीटर द्वारा निर्दिष्ट संदेश में, पंक्तियाँ एक 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: somanyelse@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);
?>