0

現在、WordPress DBからデータを取得し、返された行をループしてfputcsv()を使用するスクリプトがあります。ファイルハンドルは次のように設定されました:

$fh = fopen('php://output', 'w');

スクリプトはWebページのリンクにリンクされており、リンクをクリックすると、CSVがダウンロードされます(content-dispositionヘッダーを使用)。

このCSVファイルをphp:// outputに書き込んでから、PHPのmail()関数を使用して添付ファイルで送信することはできますか?

MIMEタイプをmultipart/mixedに設定するメール関数を作成しましたが、メールで送信する実際の添付ファイルを作成する方法がわかりません。

4

1 に答える 1

1

代わりにtmpfile()を使用してください。CSV データをその一時ファイルに書き込み、メールに添付します。

さらに、独自の MIME 処理/生成関数を作成しないでください。PHPMailer や Swiftmailer などのライブラリを使用してください。はるかに簡単で信頼性が高くなります。添付ファイル処理コードの一部では、ユーザーに表示されるファイル名を指定できるため、「/tmp/abc123def」であっても、実際の電子メールでは「data.csv」(または指定したもの) として表示されます。

于 2012-10-15T01:10:30.123 に答える