しんちゃんのPHP入門道場
管理人:しんちゃんが独学でコツコツ学んだ経験を忘れないように秘かに記録しておいてるものです
※ まだ作成途中なので管理人の気分でレイアウトが変わります。ご勘弁を<(_ _)>

自動返信メール

 
メールはabc@n-shinchan.com
ftpのアカウントはshinchanだとします。

aliasesには

abc: "|/usr/bin/php -f /home/shinchan/public_html/test.php"

と追加する。

そうすると、abc@n-shinchan.comに来たメールが
/home/shinchan/public_html/test.phpに送られます。

abc@n-shinchan.comにメールを送ると
/home/shinchan/public_html/test.phpが起動し、そのPHPにメール内容が送られます。

下記のようにソースを書けば送信元アドレスを取得して自動で返信メールを送れる。
<?php

require_once("Mail/mimeDecode.php");
mb_language("Japanese");
mb_internal_encoding("UTF-8");

//メールソースを標準入力から読み込み
$source = file_get_contents("php://stdin");
if(!$source)
{
    //echo "標準入力に失敗";
    exit(0);
}


//メール解析
$params["include_bodies"] = true;
$params["decode_bodies"] = true;
$params["decode_headers"] = true;
$decoder = new Mail_mimeDecode($source);
$structure = $decoder->decode($params);

//toに返すためにfromとtoを逆にしている
$to = $structure->headers["from"];
$from = $structure->headers["to"];

$subject="メール標題";
$body="本文";

$subject="=?ISO-2022-JP?B?".base64_encode($subject)."?=";
$body=mb_convert_encoding($body,"JIS","UTF-8");

ini_set( "SMTP", $smtpserver );
//メール返信
mail($to, $subject, $body, "From: ".$from);

?>
 

Copyright (C) 2009 - 2018 しんちゃん All Rights Reserved.