2017-07-05 19 views
0

Imはcsv添付ファイルを送信していますが、誰かが電子メールを開いたときにlaravelが間違ったエンコーディングでcsvを送信します。Laravel Mail Send添付間違ったエンコーディング

私のケースでは、ポルトガル語の言語であるため、csvファイルには、のような特別なcharectersがあります。 €..

例コード: `` `

class MailCron extends Mailable 
{ 
    use Queueable, SerializesModels; 

    public $csv; 


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

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

     return $this->from('[email protected]') 
      ->view('mail.leads') 
      ->attach($this->csv->store("csv",false,true)['full']); 

    } 
} 
+0

CSVをUTF8にエンコードしようとしましたか? – TheFallen

+0

はcsvファイルにあります。私が見つけた問題は、電子メールを送信したときにlaravelが投げられたことです。私は他の電子メールプロバイダ(gmail ..)によってcsvを送信しようとしました。電子メールを開くと、奇妙なcharectersを表示しません。唯一の問題はララベル側です。 Mailableでヘッダーエンコーディングを実行するにはどうすればよいですか? –

答えて

0

これは、メールのヘッダーを設定する必要があります。

public function build() 
{ 
    $this->withSwiftMessage(function (\Swift_Message $message) { 
     $message->getHeaders() 
      ->addTextHeader('Content-Type', 'text/plain; charset=utf-8'); 
    }); 

    return $this->from('[email protected]') 
     ->view('mail.leads') 
     ->attach($this->csv->store("csv",false,true)['full']); 
} 

は、ヘッダtext/plainので確認してくださいとtext/html

関連する問題