###メールデータの成型を行っています
メールの生データを利用してそれぞれの値を取り出す為のコードを書いています。
抜き出したいメールデータは以下になります。
- Toアドレス(Delivered-To:)
- Fromアドレス(From:)
- Replyアドレス(Return-Path:)
- 日付(Date:)
- 件名(Subject:)
- メーラー(X-Mailer:)
- バウンダリ(boundary=)
- 本文(text/plain , text/html)
- Content-Type(Content-Type:)
- charset(文字コード)
とまぁ、上げだしたらキリがないのですが今悩んでいるところが文字列の切り出しです。
開始位置から最初の改行(\r\n)までの文字列を切り出したいのですがどのようなコードを書いていいやら解らず、手が止まってしまっています。出来る限り、自分でなんとかしようと今まで質問サイトは使わないよう、心がけてきましたが先人たちのお力添えを頂かないと自分の力ではどうしようもなくなってきました。
php
1$maildata = file_get_contents("original_msg.txt"); // 生メールデータ for Gmail 2$toAdd = mb_strpos($maildata, 'Delivered-To: '); // 14文字 3$start_toAdd = $toAdd + 14; // 開始位置:'Delivered-To: 'の最後の空白の後から開始 4$end_toAdd = '\r\n'; // 最初に出てくるCRLF改行文字の手前まで切り出し 5 6/* 例えば$maildata変数の文字列の中で 7 * Delivered-To: hogehoge@gmail.com 8 * 上記の1行にある'hogehoge@gmail.com'を切り出す為のプロセスが解らない状態です。 9*/
上記で開始位置の指定、終了文字を指定しているのでこれらを使ってどうにかすると思うのですが思った通りに動くstr関係の関数がないのと、どの関数を組み合わせて見つかった文字列から最初の改行までを切り出せばいいのか解りません。
ご指導頂ければ幸いです。宜しくお願い致します。

回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/25 14:34