2017-02-21 85 views
-1

我只是想知道是否可以從收到的電子郵件中提取信息,然後再使用。我更喜歡PHP;然而,如果它也可以用Asp.net,那麼我願意嘗試它。如何從電子郵件中使用asp.net或php提取信息

我只是需要它,以便代碼(PHP或Asp.net)會自動以一種方式「爆炸」信息,以便可以讀取身體內的內容並將其用於其他目的。

+3

確定這是可能的。問題回答了。現在,你真正想要問什麼? – mason

回答

1

看來你正在尋找一種方法來解析PHP中的電子郵件。

沒有爲一個PHP模塊: http://php.net/manual/fr/book.mailparse.php

您需要首先安裝該模塊(通過PECL,百勝,容易或直接,取決於你的系統)。例如:

pecl install mailparse 

您還需要在其他php模塊之後加載它。你需要在你的系統中使用ini文件找到php模塊的確切位置。它可以是,例如:

/etc/php.d/(紅帽/ Centos的) 或 /etc/php/7.0/fpm/conf.d/(Ubuntu的與FPM PHP 7)

如果您運行phpinfo(),它會爲您提供一行 「使用此位置掃描此目錄以獲得額外的.ini文件」。

在該目錄下創建一個名爲類似於99-mailparse.ini的文件來加載最後一個文件。將這些行放入此文件中:

extension=mbstring.so 
extension=mailparse.so 

請注意,必須在mailparse之前加載mbstring。

如果您的服務器運行Windows,請將.so替換爲.dll。

如果您使用Web服務器(例如Apache)運行php,然後重新加載它。

雖然可以mailparser直接使用,更容易的解決辦法是使用包裝圍繞這樣的:

https://github.com/php-mime-mail-parser/php-mime-mail-parser

安裝到您的項目:

composer require php-mime-mail-parser/php-mime-mail-parser 

然後包括在你的php文件:

require_once __DIR__.'/vendor/autoload.php'; 

它給你直接訪問所有郵件組件(包含字段,主題,不同格式的正文,附件等的標題)。

例如,從原始電子郵件文本字符串(例如$ emailRawText)提取郵件正文:

$Parser = new PhpMimeMailParser\Parser(); 

$Parser->setText($emailRawText); 

$text = $Parser→getMessageBody('text'); 

您可以根據您想要從郵件中提取正是參數和輸出播放。

相關問題