[PHP-users 8828] メールのheaderを取得の仕方

小野 昇一 php-users@php.gr.jp
Tue, 23 Jul 2002 09:08:51 +0900


小野です。
お世話になっています。

携帯端末などからメールを送信して、
aliasesに以下のように登録して、メールの送信者の(From)
アドレスを取得したいと思います。

Beckyや、Outlookなどのメーラでは
以下のようにして、$lineにFromが入った1行が取り出せました。
ただ、以下のスクリプトだと、最初の1行しか読み取れません。
メーラ等によって、Headerの内容が違うと思うのでどうにか
うまく取れないかと思います。

--- test.php ---

set_time_limit(0);
$stdin = fopen("php://stdin", "r");

if (!$stdin) {
	die("Error\n");
}
for (;;) {
	$line = fgets($stdin, 1024);
	break;
}

--- aliases ---
test: "|/usr/local/bin/php /export/home/test/test.php"

ちなみに、perlだと
while(<STDIN>)
でとれるんですが…。