dポイントプレゼントキャンペーン実施中!

既にサーバー上で動いているphpのテストを、ローカル(winXP + Apache2)
でテストしたいのですが、mb_send_mail の行があると、応答が帰ってきません。
テストなので、メールを送信出来る必要は無いので、メール送信ではなく、
ファイルに出力にしたいのですが、設定方法が分かりません。
たぶん、php.ini の中の [mail function] のところをいじればよいのだと
思いますが、やり方を教えてもらえないでしょうか。

Perlでは、open(MAIL,">test.txt"); のようにしていました。
よろしくお願いいたします。

A 回答 (1件)

sendmail_pathをファイルを保存するスクリプトで指定すればメール保存出来ると思います。



代替方法とすれば、例えば、テストフラグ $tflgでも用意しておいて、そのフラグによってmb_send_mailとテスト用の自作関数(例えばtest_mb_send_mail)を呼び出すなんて強引な方法も出来ると思いますが。
if($tflg) {mb_send_mail($hogehoge);}else{test_mb_send_mail($hogehoge);}
    • good
    • 0
この回答へのお礼

ありがとうございます。
php.iniに
sendmail_path = "c:/usr/bin/perl c:/sendmail.pl"
と記述することで、動くようになりました。

欲を出してもう一つ。
sendmail.pl の中身は

open(OUT,">>c:/sendmail.txt");
print OUT @ARGV;
close(OUT);
exit;

なのですが、ファイルは作成されるのですが、中身が空っぽです。
メールの内容を受け取るには、 @ARGV ではダメでしょうか?

お礼日時:2007/07/26 19:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!