2010-01-19 61 views
-1

我有這樣的PHP代碼:添加非打破空間的PHP電子郵件不插入空格

mail($email, $subject, 
    "Welcome to **!\n\n The password for your account is:\n $password", 
    $headers); 

添加& NBSP到PHP電子郵件內容不插入空格。

我想在冒號和$password之間放兩個空格。有沒有辦法增加空格?

回答

2

您可以發送電子郵件作爲HTML這需要額外的頭和實際的HTML在您的郵件正文:

// Add extra headers to $headers 
$headers .= "MIME-Version: 1.0\r\n"; 
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; 

// Send mail as HTML 
mail($email, $subject, 
    "<html><body>Welcome to **!<br><br> The password for your account is:<br> &nbsp;$password</body></html>", 
    $headers); 
1

添加<html></html>:指示消息是HTML格式的。然後您可以使用&nbsp;

使用nl2br函數將換行符轉換爲<br/> s。

還通過添加標頭「Content-Type: text/html; charset=UTF-8」來設置內容類型。

如果您不想使用HTML:您也可以使用製表符\t,但不確定Hotmail是否支持這種打火機。

+0

後,你必須對所有這些'\ N'的轉換爲'
's – 2010-01-19 18:43:37

0

如果電子郵件的Content-Typetext/plain,則應該遵守所有空格。聽起來你正在傳送電子郵件爲text/html,這就是爲什麼你需要& nbsp來獲得第二個空間顯示。

0

發送郵件時使用「自動換行」嘗試,這應該分手的電子郵件和 解決這個問題:

@mail($to, $subject, wordwrap($message), $headers); 
相關問題