受信メールを handler.php にパイプしています。私はそれを正常にパイプすることができ、それは機能していますが、メールヘッダーから変数、たとえば「件名」、「宛先」、または「メッセージ本文」を取得するときに、いくつかの問題が発生しています。これが私がここから得たコードです
コードは次のとおりです。
<?php
//Assumes $email contains the contents of the e-mail
//When the script is done, $subject, $to, $message, and $from all contain appropriate values
//Parse "subject"
$subject1 = explode ("\nSubject: ", $email);
$subject2 = explode ("\n", $subject1[1]);
$subject = $subject2[0];
//Parse "to"
$to1 = explode ("\nTo: ", $email);
$to2 = explode ("\n", $to1[1]);
$to = str_replace ('>', '', str_replace('<', '', $to2[0]));
$message1 = explode ("\n\n", $email);
$start = count ($message1) - 3;
if ($start < 1)
{
$start = 1;
}
//Parse "message"
$message2 = explode ("\n\n", $message1[$start]);
$message = $message2[0];
//Parse "from"
$from1 = explode ("\nFrom: ", $email);
$from2 = explode ("\n", $from1[1]);
if(strpos ($from2[0], '<') !== false)
{
$from3 = explode ('<', $from2[0]);
$from4 = explode ('>', $from3[1]);
$from = $from4[0];
}
else
{
$from = $from2[0];
}
?>
Gmail のメールの場合、件名、from、to、およびメッセージ本文は正常に取得されますが、Yahoo からの受信メールでは機能しません。
すべての有名な電子メール サービス プロバイダーと互換性のあるユニバーサル php クラスはありますか? 誰かが RoundCube または別の電子メール送信者から電子メールを送信した場合はどうなりますか? 変数を正常に検出するにはどうすればよいですか?
ありがとう!