Php 电子邮件中的换行符被忽略
我正在建立一个电子邮件,只是一个简单的文本之一。电子邮件的一部分来自CSV文件,我希望在每个条目后都有一个换行符Php 电子邮件中的换行符被忽略,php,Php,我正在建立一个电子邮件,只是一个简单的文本之一。电子邮件的一部分来自CSV文件,我希望在每个条目后都有一个换行符\n。出于某种原因,这被忽略了。我替换逗号如下 $orderDetails = str_replace(',', '\n\n', $orderDetails); 然后将其添加到电子邮件中 $email_body = "Hello Joe Bloggs, \n\n Below are the order details \n\n".$orderDetails; 出于某种原因,收到的
\n
。出于某种原因,这被忽略了。我替换逗号如下
$orderDetails = str_replace(',', '\n\n', $orderDetails);
然后将其添加到电子邮件中
$email_body = "Hello Joe Bloggs, \n\n Below are the order details \n\n".$orderDetails;
出于某种原因,收到的电子邮件打印了\n\n
,而不是实际添加了一行新行。因此,电子邮件实际上看起来像
Hello Joe blogs
Below are the order details
item 1\n\nitem 2\n\nitem 3\n\n
为什么会这样?您应该在
str\u replace()中使用双引号。
:
在双引号内,PHP将
\n
解释为特殊字符。请参阅。您应该在str_replace()
中使用双引号:
在双引号内,PHP将
\n
解释为特殊字符。请参阅。使用\r\n
和双引号
$orderDetails = str_replace(',', "\r\n", $orderDetails);
使用
\r\n
和双引号
$orderDetails = str_replace(',', "\r\n", $orderDetails);
请显示$orderDetails中的内容请显示$orderDetails中的内容