2016-10-10 6 views
0

部分的に英語で書かれ、部分的にPHPを使って日本語で書かれた電子メールを解析しようとしています。あなたは、物事をテストするために、私は、電子メールの平文ボディ外に響くんだ見ることができるようにPHPのIMAPからUnicode文字を取得するにはどうすればよいですか?

if ($mbox = imap_open($mailbox, $username, $password)) { 

    $inbox = imap_check($mbox); 
    $total = (int) $inbox->Nmsgs; 
    $min = max(1, $total - 10); 

    // fetch 10 most recent emails 
    if ($total > 0 && ($emails = imap_fetch_overview($mbox, "{$min}:{$total}"))) { 

     foreach ($emails as $email) { 

      $body = imap_body($mbox, $email->uid, FT_UID); 

      // for testing purposes 
      echo $body; 

      // parsing logic here 

     } 
    } 
} 

と、ここで私が実行したときに私が取得エコー応答の一部です:ここでのコードは、私がこれまで持っていますこのスクリプト:

日のあなたの日本語の単語は次のとおりです。

ã®åC」・ただし、以下は私で実際に何があるかに基づいて、その場で見るべきものですメール:

日のあなたの日本語の単語です:男の子

だから、明らかに何かが(しゃれが意図した)翻訳で失われています。私はいくつかの簡単な文字列操作を使用して、日本語の文字を試して解析し、それらをMySQLデータベースに挿入しています。しかし、現在、それらのgobbledygook文字を代わりに挿入しています。私は何が欠けていますか?

編集:私は、私は突然のすべてを、私はPHP 7に私のサーバーをアップグレードしようとすることを決めたPHP 5でこの作業を取得する方法が本当にわからないので、PHPのバージョン5.4.45

+0

どこにエコーしますか?あなたがそれをエコーし​​ている場所のエンコードは何ですか? – zerkms

+0

私のブラウザのウィンドウにちょうど – SoaperGEM

+0

それのエンコーディングは何ですか? – zerkms

答えて

0

を使用していますコードが動作し始めたばかりです。

関連する問題