Laravel: Textarea mailable 删除新段落

Laravel: Textarea mailable deletes new pharagraphs

我有一个联系表格,如果有人填写,他会收到一封回复电子邮件,我会收到一封 "new message" 电子邮件。我用五段 Lorem Ipsum 测试了它,它在一个段中发出。 例如: 输入:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum pharetra aliquam tellus condimentum rutrum. Maecenas id aliquam neque. Phasellus a magna arcu. Suspendisse ut vehicula tortor. Donec quis sodales arcu. Suspendisse viverra sapien dolor, eget aliquam augue tempor ac. Nulla dictum justo ac scelerisque mattis. Proin viverra dui nec quam feugiat placerat. Proin libero mi, sodales nec lorem id, accumsan tristique felis. Donec consectetur, nibh vel tincidunt aliquet, elit nisl congue ipsum, ut dictum eros nunc vitae justo. Morbi euismod nibh et metus rhoncus dapibus. Phasellus hendrerit iaculis nulla, a cursus nisl consectetur sit amet. Praesent auctor, nisi non mattis mollis, felis odio euismod diam, vel auctor felis eros sed nisl. Donec magna mauris, rutrum vitae cursus vel, volutpat id enim. Fusce auctor, dolor et tristique accumsan, velit augue sagittis lectus, sit amet mattis nisl velit gravida massa. Proin eget lorem eleifend, consequat velit eget, volutpat ipsum.

Proin nulla diam, malesuada id mi sed, sollicitudin pharetra massa. In ac venenatis est, placerat viverra ante. Donec venenatis nisi elit, sit amet semper libero hendrerit sit amet. Vivamus bibendum ipsum arcu, accumsan condimentum massa molestie eget. Donec vel gravida velit. Etiam dapibus tortor vel felis dapibus feugiat. Integer est arcu, ullamcorper sed ornare ac, dignissim sed odio. Sed malesuada pellentesque enim sed consequat. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Maecenas pulvinar sodales iaculis. Quisque at libero ac ex viverra condimentum id facilisis augue. Nam at orci lacus. Morbi sed aliquam elit, nec condimentum neque. Sed pretium quam et tortor commodo gravida. Morbi faucibus dapibus consequat.

输出:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum pharetra aliquam tellus condimentum rutrum. Maecenas id aliquam neque. Phasellus a magna arcu. Suspendisse ut vehicula tortor. Donec quis sodales arcu. Suspendisse viverra sapien dolor, eget aliquam augue tempor ac. Nulla dictum justo ac scelerisque mattis. Proin viverra dui nec quam feugiat placerat. Proin libero mi, sodales nec lorem id, accumsan tristique felis. Donec consectetur, nibh vel tincidunt aliquet, elit nisl congue ipsum, ut dictum eros nunc vitae justo. Morbi euismod nibh et metus rhoncus dapibus. Phasellus hendrerit iaculis nulla, a cursus nisl consectetur sit amet. Praesent auctor, nisi non mattis mollis, felis odio euismod diam, vel auctor felis eros sed nisl. Donec magna mauris, rutrum vitae cursus vel, volutpat id enim. Fusce auctor, dolor et tristique accumsan, velit augue sagittis lectus, sit amet mattis nisl velit gravida massa. Proin eget lorem eleifend, consequat velit eget, volutpat ipsum. Proin nulla diam, malesuada id mi sed, sollicitudin pharetra massa. In ac venenatis est, placerat viverra ante. Donec venenatis nisi elit, sit amet semper libero hendrerit sit amet. Vivamus bibendum ipsum arcu, accumsan condimentum massa molestie eget. Donec vel gravida velit. Etiam dapibus tortor vel felis dapibus feugiat. Integer est arcu, ullamcorper sed ornare ac, dignissim sed odio. Sed malesuada pellentesque enim sed consequat. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Maecenas pulvinar sodales iaculis. Quisque at libero ac ex viverra condimentum id facilisis augue. Nam at orci lacus. Morbi sed aliquam elit, nec condimentum neque. Sed pretium quam et tortor commodo gravida. Morbi faucibus dapibus consequat.

在开发人员工具中:网络显示正确的格式。

我的控制器:

public function contactPost(Request $request){
    $name = $request -> name;
    $phone = $request -> phone;
    $email = $request -> email;
    $subject = $request -> subject;
    $message = $request -> message;

    $params = array(
        'name' => $name,
        'phone' => $phone,
        'email' => $email,
        'subject' => $subject,
        'message' => $message,
    );

    Mail::to($email)->send(new ContactMailResponse($params));
    Mail::to($adminMail)->send(new 
    ContactMail($params));

    return redirect("/#contact");
}

我的可邮寄:

<?php

namespace App\Mail;

use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
use Carbon\Carbon;

class ContactMailResponse extends Mailable
{
    use Queueable, SerializesModels;

    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct($params)
    {
        $this->params = $params;
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build(){

        $template = 'emails.contactemail';

        return $this->subject('Contact response')
                    ->view($template)
                    ->with(['params' => $this->params]);
    }
}

有什么问题?

文本区域值中的换行符必须转换为 <br> 标记。您可以使用 php 中的 nl2br($plainText) 方法执行此操作。

'message' => nl2br($message),

看起来你正在输出 {{ content }} 而不是 {!! content !!}}