Slim v3 php フレームワークを使用しており、PHPMailer を統合してメールを送信しています。Twig のようなテンプレート エンジンは使用せず、プレーンな PHP を使用しています。
私の考えは、通常のページ テンプレートと同様に、メール用の HTML5 テンプレートを別のファイルに作成し、いくつかの変数を渡し、レンダリングして送信することです。一部を除いてすべてうまく機能します - レンダリングされた出力にはヘッダー情報もレンダリングされています。
これは私のコードがどのように見えるか、もちろん単純化されています
// Store variables in an array
$email_content = array(
'email__name' => $_POST['name'],
'email__from' => $_POST['from'],
'email__message' => $_POST['message']
);
// Render email template
$template = $this->view->render($response, "email/simple_email.phtml", $email_content);
そして、これをPHPMailerで送信します
$mail->msgHTML($template);
問題は、HTML コンテンツの上に、送信された電子メールに表示されるこのヘッダー データを取得することです。
HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8
これなしで出力をレンダリングする方法はありますか? 現時点では、これを削除するために str_replace() を使用していますが、これに対処するためのエレガントな組み込みのソリューションがあると思いますか?