admin 发表于 2023-2-16 18:54:47

PHP 发送电子邮件

<div id="article_content" class="article_content clearfix">
      <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/kdoc_html_views-1a98987dfd.css">
      <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_views-6e43165c0a.css">
                <div id="content_views" class="htmledit_views">
                  <p>PHP 允许您从脚本直接发送电子邮件。</p>
<hr>
<h2>PHP mail() 函数</h2>
<p>PHP mail() 函数用于从脚本中发送电子邮件。</p>
<p><strong>语法</strong></p>
<p>mail(to,subject,message,headers,parameters)</p>
<p></p>
<table><tbody><tr><th>参数</th><th>描述</th></tr><tr><td style="vertical-align:top;">to</td><td style="vertical-align:top;">必需。规定 email 接收者。</td></tr><tr><td style="vertical-align:top;">subject</td><td style="vertical-align:top;">必需。规定 email 的主题。<strong>注释&#xff1a;</strong>该参数不能包含任何新行字符。</td></tr><tr><td style="vertical-align:top;">message</td><td style="vertical-align:top;">必需。定义要发送的消息。应使用 LF (\n) 来分隔各行。每行应该限制在 70 个字符内。</td></tr><tr><td style="vertical-align:top;">headers</td><td style="vertical-align:top;">可选。规定附加的标题&#xff0c;比如 From、Cc 和 Bcc。应当使用 CRLF (\r\n) 分隔附加的标题。</td></tr><tr><td style="vertical-align:top;">parameters</td><td style="vertical-align:top;">可选。对邮件发送程序规定额外的参数。</td></tr></tbody></table>
<p><strong>注释&#xff1a;</strong>PHP 运行邮件函数需要一个已安装且正在运行的邮件系统(如&#xff1a;sendmail、postfix、qmail等)。所用的程序通过在 php.ini 文件中的配置设置进行定义。请在我们的 <ahref="https://www.runoob.com/php/php-ref-mail.html">PHP Mail 参考手册</a> 阅读更多内容。</p>
<hr>
<h2>PHP 简易 E-Mail</h2>
<p>通过 PHP 发送电子邮件的最简单的方式是发送一封文本 email。</p>
<p>在下面的实例中&#xff0c;我们首先声明变量($to, $subject, $message, $from, $headers)&#xff0c;然后我们在 mail() 函数中使用这些变量来发送了一封 E-mail&#xff1a;</p>
<pre><?php
$to &#61; &#34;someone&#64;example.com&#34;;         // 邮件接收者
$subject &#61; &#34;参数邮件&#34;;                // 邮件标题
$message &#61; &#34;Hello! 这是邮件的内容。&#34;;// 邮件正文
$from &#61; &#34;someonelse&#64;example.com&#34;;   // 邮件发送者
$headers &#61; &#34;From:&#34; . $from;         // 头部信息设置
mail($to,$subject,$message,$headers);
echo &#34;邮件已发送&#34;;
?></pre>
<p></p>
<hr>
<h2>PHP Mail 表单</h2>
<p>通过 PHP&#xff0c;您能够在自己的站点制作一个反馈表单。下面的实例向指定的 e-mail 地址发送了一条文本消息&#xff1a;</p>
<pre><html>
<head>
<meta charset&#61;&#34;utf-8&#34;>
<title>菜鸟教程(runoob.com)</title>
</head>
<body>

<?php
if (isset($_REQUEST['email'])) { // 如果接收到邮箱参数则发送邮件
    // 发送邮件
    $email &#61; $_REQUEST['email'] ;
    $subject &#61; $_REQUEST['subject'] ;
    $message &#61; $_REQUEST['message'] ;
    mail(&#34;someone&#64;example.com&#34;, $subject,
    $message, &#34;From:&#34; . $email);
    echo &#34;邮件发送成功&#34;;
} else { // 如果没有邮箱参数则显示表单
    echo &#34;<form method&#61;'post' action&#61;'mailform.php'>
    Email: <input name&#61;'email' type&#61;'text'><br>
    Subject: <input name&#61;'subject' type&#61;'text'><br>
    Message:<br>
    <textarea name&#61;'message' rows&#61;'15' cols&#61;'40'>
    </textarea><br>
    <input type&#61;'submit'>
    </form>&#34;;
}
?>

</body>
</html></pre>
<p><br> 实例解释&#xff1a;</p>
<ul><li>首先&#xff0c;检查是否填写了邮件输入框</li><li>如果未填写&#xff08;比如在页面被首次访问时&#xff09;&#xff0c;输出 HTML 表单</li><li>如果已填写&#xff08;在表单被填写后&#xff09;&#xff0c;从表单发送电子邮件</li><li>当填写完表单点击提交按钮后&#xff0c;页面重新载入&#xff0c;可以看到邮件输入被重置&#xff0c;同时显示邮件发送成功的消息</li></ul>
<p><strong>注释&#xff1a;</strong>这个简易发送 e-mail 不安全&#xff0c;在本教程的下一章中&#xff0c;您将阅读到更多关于电子邮件脚本中的安全隐患&#xff0c;我们将为您讲解如何验证用户输入使它更安全。</p>
                </div>
      </div>
      <div id="treeSkill"></div>
页: [1]
查看完整版本: PHP 发送电子邮件