У меня есть следующий код:
$message = "Good news! The item# $item_number on which you placed a bid of \$ $bid_price is now available for purchase at your bid price.\n
The seller, $bid_user is making this offer.\n
\nItem Title : $title\n
\nAll the best,\n
$bid_user\n
$email\n
";
echo $message;
$htmlContent = $baseClass->email_friend($item_number, $title, $bid_price, $bid_user, $mcat, $message, $email, $VIEWSTATE, $EVENTVALIDATION, $URL);
Проблема состоит в том, что новая строка повреждается (\n)
не работает.
Попробуйте \r\n
вместо \n
Следует отметить, что это применимо к возврату строк в электронных письмах. Для других сценариев, пожалуйста, обратитесь к ответу rokjarc.
Вы строите эту строку, используя одинарные или двойные кавычки? \r и \n работают только с двойными кавычками, а также со встроенными переменными. Например:
$foo = 'bar';
echo 'Hello \n $foo!';
выведет:
Hello \n $foo!
Но:
$foo = 'bar';
echo "Hello \n $foo!";
выведет:
Hello
bar!
РЕДАКТИРОВАТЬ: Возможно, в вашем классе для отправки электронных писем есть опция для электронных писем в формате HTML, а затем вы можете использовать
1) Двойные кавычки
$output = "Good news! The item# $item_number on which you placed a bid of \$ $bid_price is now available for purchase at your bid price.\nThe seller, $bid_user is making this offer.\n\nItem Title : $title\n\nAll the best,\n $bid_user\n$email\n";
Если вы используете двойные кавычки, тогда \ n будет работать (в браузере не будет новой строки, но посмотрите исходный код в вашем браузере - символы \ n будут заменены на новые строки)
2) Одиночные кавычки не имеют эффекта как двойные кавычки выше:
$output = 'Good news! The item# $item_number on which you placed a bid of \$ $bid_price is now available for purchase at your bid price.\nThe seller, $bid_user is making this offer.\n\nItem Title : $title\n\nAll the best,\n $bid_user\n$email\n';
все символы будут напечатаны как есть (даже переменные!)
3) Разрывы строк в HTML
$html_output = "Good news! The item# $item_number on which you placed a bid of <br />$ $bid_price is now available for purchase at your bid price.<br />The seller, $bid_user is making this offer.<br /><br />Item Title : $title<br /><br />All the best,<br /> $bid_user<br />$email<br />";
если вы выводите код в формате html - измените /n -->
, и сделайте echo $message;
Если вы выводите сообщение в формате html или html, вам нужно будет использовать
или
вместо
\ n
.
Если это просто текстовое электронное письмо: Возможно, вы используете '
вместо "
? Хотя тогда ваши значения также не будут вставлены ...