在我的 PHP 电子邮件表单中创建换行符


Create a line break in my PHP email form

''我希望有人能帮忙。我对php有点笨,但我设法使用从html表单调用的邮件.php页面为我的床和早餐创建了一个预订表格。

身体是这样的:

$subject = "Booking Request"; 
$fields = array(); 
$fields{"title"} = "Title";
$fields{"name"} = "Name";
$fields{"email"} = "email";
$fields{"telephone"} = "telephone";
$fields{"mobile"} = "mobile";
$fields{"arrival_day"} = "arrival day";
$fields{"departure_day"} = "departure day";
$fields{"adults"} = "#  of adults";
$fields{"children"} = "# of children";
$fields{"questions"} = "any questions?";

它有效,但一切都像这样在一行上出现

标题: 女士 姓名: 乔 博客 电子邮件: joe@blogs.com.au 电话: 02 12345697 手机: 01234958到达 日: 10/06/12 出发日: 20/06/12 # 成人人数: 8 # 儿童人数: 4 有什么问题吗?

但我希望它看起来像这样:

头衔: 女士
姓名:乔博客
电子邮件: joe@blogs.com.au
等。

我尝试过'n'r<br/>在各种地方,但我只是在黑暗中刺伤......我可以修复我所拥有的东西还是需要使用完全不同的代码?

您应该使用 'n 作为结束行。

请将{}更改为[]

$fields["title"] = "Title";
$fields["name"] = "Name";
$fields["email"] = "email";
$fields["telephone"] = "telephone";
...

我曾经使用"'":

$text = 'line1'n line 2'n line 3';

结果是:

line1'n
line2'n
line3

我不满意,所以我找到了PHP_EOL

$text = 'line 1' . PHP_EOL . 'line 2' . PHP_EOL . 'line 3';

结果将是:

line 1
line 2
line 3

"<br>"是一个可行的解决方案,但您正在发送"HTML"格式的电子邮件。

使用 nl2br();

$message = nl2br($name . " " . " wrote this:" . "'n" . $_POST['message'] . $_POST['phone'] . $_POST['email']  . "'n" . $_POST['radio']);