mail()
がメールを正常に配信したかどうかをテストするにはどうすればよいですか?PHP mail()がメールを正常に配信したかどうかをテストする方法
答えて
ウェルmail()
は、メールの配信が正常に受け入れられたかどうかによってブール値を返します。メールが正常に配信のために受け入れられた場合
戻り値TRUE、FALSE そうでない場合:php.netサイトから。
メールが 配信のために受け入れられたという理由だけで、実際には宛先が目的の宛先 に届くわけではありません。
「送信済み」かどうかをテストできますが、配信済みかどうかを確認することは別の話です。ドキュメントから
:
「メールが正常に配信のために受け入れられた場合にはそうでない場合は、 FALSEをTRUE返し
メールが配信のために受け入れられたので、ちょうどそれを注意することが重要です。メールが実際に目的の宛先に届くことを意味するものではありません。」
Returns TRUE if the mail was successfully accepted for delivery, FALSE otherwise.
mail()関数だけでは、設定した「メール」が正当なものであることを通知するだけであなたのメールサーバーを送信します。
電子メールアドレスが合法であることを別途確認する必要があります。良い記事が見つかりましたhere
これらの2つの方法でうまくいけない場合は、イメージとサーバーのログファイルを使用して、いくつかの「スパム」アプローチを使用できます。ベンあたりとして
は、あなたが正常にあなたがphpmailerのを使用することができ、より良い結果のために
$result = mail('[email protected]', 'Test Subject', $message);
if(!$result) {
echo "Error";
} else {
echo "Success";
}
以下のように配信をメールで確認することができます返信。 PHPMailerの詳細については、下のリンクをクリックしてください。
http://phpmailer.worxware.com/index.php?pg=tutorial
if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}
リンクChauhanをありがとう。 – Sunny
あなたは、ユーザのリモートIPアドレスを受け取るためにPHPで$_SERVER['REMOTE_ADDR']
を使用することができます。そのような
用途:
<?php
$ip = $_SERVER['REMOTE_ADDR'];
echo "User's IP address is: ".$ip;
?>
が受信メールを受信するか否かを知るためにinbulid PHP関数の選択の余地はありません、でも我々は検出できない、それは有効なメールIDまたはない – user1844933