メール受信時に PHP スクリプトを起動して自動処理させる方法

2009年4月 3日 19:27 メール受信時に PHP スクリプトを起動して自動処理させる方法

以前、メール受信時に perl スクリプトを起動して自動処理させる方法という記事を書きましたが、それのPHP版です。

上記のエントリでも書いていますが、メール受信時に何らかの処理を行なうプログラムを作る場合、

  1. 特定のメールアカウントにメールが届いた際に、何らかのプログラムが起動するように設定する
  2. そのプログラムを書く

という2つのステップが必要ですが、そのうち1番目のステップに関しては、perl だろうが PHP だろうが、全く関係ありません。
なので、1ステップ目のメールサーバー側の設定に関しては、メール受信時に perl スクリプトを起動して自動処理させる方法を参照してください。

メールを処理する PHP スクリプトの書き方

PHP というと、Webアプリケーションに特化した言語、というイメージがありますが、もちろん perl と同じように、シェル的な使い方もできます。

メールを受け取った PHP スクリプトで、標準入力の内容を読めば、メール受信時の処理を行なえます。

ちなみに PHP の場合、PEAR の Mail_Mime というパッケージを使うと、メール受信時の処理が非常に簡単になります。

PEAR については、さくらのレンタルサーバーに PEAR をインストールするも参考にどうぞ。

#-- PEAR の Mail/mimeDecode.php を読み込む
require_once 'Mail/mimeDecode.php';

#-- メールデータ取得
$params['include_bodies'] = true; 
$params['decode_bodies']  = true; 
$params['decode_headers'] = true; 
$params['input'] = file_get_contents("php://stdin"); // 標準入力
$params['crlf'] = "\r\n"; 
$mail_data = Mail_mimeDecode::decode($params); 

#-- From フィールドの取得
$FromAddress = $mail_data->headers['from']; 

#-- To フィールドの取得
$ToAddress = $mail_data->headers['to']; 

#-- Subject フィールドの取得
$Subject = $mail_data->headers['subject'];
$Subject = mb_convert_encoding($Subject,"UTF-8","JIS");

#-- 本文の取得
$MailBody = $mail_data->body;
$MailBody = mb_convert_encoding($MailBody,"UTF-8","JIS");

後は、取得したデータを元に、色々処理すれば良いです。

なお、添付ファイルつきのメールの場合、本文を上記の方法で取得できないと思います。あくまでテキストメールの場合の例ですので悪しからず。

Twitterつぶやく

Twitter始めました。Followはお気軽にどうぞ。

関連するブログ記事
スポンサード リンク
カテゴリー
PHP
タグ
Mail_Mime | PEAR | PHP | sendmail | SMTP | UNIX | ケータイメール | コマンドライン | メール | モバイル | レンタルサーバー
現在位置
TOP > Web制作技術 > PHP > メール受信時に PHP スクリプトを起動して自動処理させる方法
前のブログ記事
月光 [2009年4月 2日 23:33]
次のブログ記事
読んだ本、読みたい本でつながるSNS&ライフログサービス『読書メーター』 [2009年4月 4日 23:59]

トラックバック(0)

このブログ記事に対するトラックバックURL:

コメント(0)

コメントする


画像の中に見える文字を入力してください。

 

このブログについて

阿部辰也

Webコンサルタントやシステムエンジニア、執筆業などをやっている、グッドホープ代表・阿部辰也のブログです。
Web技術系のTipsから仕事の話、趣味の話まで色々と。
人生は所詮生まれてから死ぬまでの壮大な暇つぶし。
だったら有意義に暇をつぶして生きましょー。

Twitter: @t_abe
読書メーター: ID:t-abe

このブログのサイトマップ
このブログのはてなブックマーク数

Feed/RSS購読

タグクラウド

最近のトラックバック

阿部辰也の著書

77のキーワードで知る インターネットで稼ぐ 図解 ブログ・メルマガ・Webサイト構築の基本

77のキーワードで知る インターネットで稼ぐ 図解 ブログ・メルマガ・Webサイト構築の基本

頑張って書いたのに、出版後すぐに出版社が倒産して印税も貰えずじまいで俺涙目(笑)。

Powered by Movable Type 4.261

スポンサード リンク

はてなブックマーク



あわせて読みたい

t-abeの今読んでる本

t-abeの最近読んだ本

t-abeの今やってるゲーム

t-abeの最近やったゲーム