PHP电子邮件中的换行问题


newline issues in PHP email

我试图让消息在客户键入时显示换行符,但每行之间都有/r/n。我还希望$body .= $_SESSION['username'];出现在单独的行中。

我试着用这个例子:PHP nl2br()的基本函数来解决,但一直没有成功。

PHP:

$body .= $_SESSION['username'];
$body .= $message;
$to = $email;
$subject = "copy of your notification"; 
$headers = "From: noti@r.co.uk'r'n";  
$headers  .= 'MIME-Version: 1.0' . "'r'n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "'r'n";
$headers .= 'Bcc:noti@r.co.uk' . "'r'n";
mail($to,$subject,$body,$headers);

HTML表单:

<form action="notification.php" method="Post" class="rl">
    <div>
        <label for="message" class="fixedwidth">Message</label>
        <textarea name="message" rows="7" cols="40" id="message"></textarea>
    </div>
    <div class="buttonarea">
        <p>
            <input type="submit" name="notify" value="Notify"></p>
        </div>
    </p>
</form>

您可以尝试使用PHP_EOL常量:

$body .= $_SESSION['username'].PHP_EOL;