Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么Laravel用“替换”来替换标签=09“;发送邮件时使用字符串?_Php_Email_Laravel - Fatal编程技术网

Php 为什么Laravel用“替换”来替换标签=09“;发送邮件时使用字符串?

Php 为什么Laravel用“替换”来替换标签=09“;发送邮件时使用字符串?,php,email,laravel,Php,Email,Laravel,我使用以下代码在Laravel中发送邮件: \Mail::send('emails.mailing', $data, function ($message) use ($user) { $message ->to($user->email, $user->first_name) ->subject('some nice subject'); }); emails/mailing.blade.php文件包含带

我使用以下代码在Laravel中发送邮件:

\Mail::send('emails.mailing', $data,
    function ($message) use ($user) {
        $message
          ->to($user->email, $user->first_name)
          ->subject('some nice subject');
});
emails/mailing.blade.php文件包含带有许多选项卡的html,以便更好地进行编码,但是当我查看收到的电子邮件的来源时,所有选项卡都被“=09”字符串替换

这是什么原因造成的,我如何修复


编辑:一个i.m.o.好的解决方案是在发送邮件之前删除所有标签。我该怎么做?

=09是制表符的
可打印编码(请参阅),Zach Alam建议告诉它使用8位编码器而不是默认的(QP)编码器:

在您的代码上下文中,这可能通过以下方式完成:

\Mail::send('emails.mailing', $data,
    function ($message) use ($user) {
        $message
          ->setEncoder(Swift_Encoding::get8BitEncoding())
          ->to($user->email, $user->first_name)
          ->subject('some nice subject');
});

=09是制表符的
引用的可打印
编码(请参阅),Zach Alam建议告诉它使用8位编码器而不是默认的(QP)编码器:

在您的代码上下文中,这可能通过以下方式完成:

\Mail::send('emails.mailing', $data,
    function ($message) use ($user) {
        $message
          ->setEncoder(Swift_Encoding::get8BitEncoding())
          ->to($user->email, $user->first_name)
          ->subject('some nice subject');
});

对于编辑问题,您可以在发送邮件之前删除邮件中的所有选项卡:

$message_in_your_emails_mailing_view = str_replace(chr(9), '', $message_in_your_emails_mailing_view);

对于编辑问题,您可以在发送邮件之前删除邮件中的所有选项卡:

$message_in_your_emails_mailing_view = str_replace(chr(9), '', $message_in_your_emails_mailing_view);

嗯,我得到一个错误:PHP致命错误:在/var/www/site.com/releases/20141023075449/vendor/jeremeamia/SuperClosure/src/jeremeamia/SuperClosure/SerializableClosure.PHP(99):eval()第2行代码中找不到类“Swift_Encoding”。显然,我没有(并使用)Swift Mailer。您需要安装该类,或者包含它,或者确保您的自动includer可以找到它。我无法使其正常工作。我在供应商地图中有一个swiftmailer地图,所以我想应该包括正确的功能。如何正确自动加载?嗯,我遇到了一个错误:PHP致命错误:在/var/www/site.com/releases/20141023075449/vendor/jeremeamia/SuperClosure/src/jeremeamia/SuperClosure/SerializableClosure.PHP(99):eval()第2行的代码中找不到类“Swift_Encoding”。显然,我没有(并使用)Swift Mailer。您需要安装该类,或者包含它,或者确保您的自动includer可以找到它。我无法使其正常工作。我在供应商地图中有一个swiftmailer地图,所以我想应该包括正确的功能。如何正确自动加载?$message不是一个字符串,而是一个lightize\Mail\message。因此,这不起作用:(我的错,对不起。我已经编辑了我的答案,你必须修改的邮件(和代码)在你的emails.mailing视图中。$message不是一个字符串,而是一个lightize\Mail\message。因此,这不起作用:(我的错,对不起。我已经编辑了我的答案,你必须修改的邮件(和代码)在你的emails.mailing视图中。