Я хочу читать Outlook .msg
электронная почта с языком PHP, и я не знаю, как читать его с помощью простой функции чтения файлов.
Я включил Расширение Mailparse в моей системе Linux и с его помощью я могу прочитать .eml
файлы правильно, но не .msg
,
Не могли бы вы указать мне, чтобы исправить код или библиотеку мне нужно использовать?
заранее спасибо
Вы можете разобрать, используя Aspose_Email_Java_for_PHP
Скачать Вот
$mapiMessage=new MapiMessage();
$outlook_message_file = $mapiMessage->fromFile($dataDir . "Message.msg");
print "Sender Name : " . $outlook_message_file->getSenderName();
print "Subject : " . $outlook_message_file->getSubject();
print "Body : " . $outlook_message_file->getBody();
Вы можете использовать этот класс я построен который даст вам основную информацию от .MSG
файл.
Использование:
Создайте экземпляр объекта:
require './msgviewer.php';
$msg = new MSGViewer($file); //File being your .MSG file
Верните данные, используя следующие методы:
//From
$msg->From()['name']; //From: Display name
$msg->From()['email']; //From: Email Address
//To -> Returns in Array with Key = Display Name and Value = Email Address
foreach($msg->To() as $k=>$v) {
echo $k . ' ' . $v . ', ';
}
//Subject
$msg->Subject(); //Subject:
//Body
$msg->Body(); //Body of Email
Пример для вызова нескольких файлов:
require './msgviewer.php';
$fileArr = ['EmailOne.msg', 'EmailTwo.msg', 'EmailThree.msg'];
foreach($fileArr as $k=>$v) {
checkMSG($v);
echo '<br>';}
function checkMSG($file) {
$msg = new MSGViewer($file);
echo 'From: ' . $msg->From()['name'] . ' ' . $msg->From()['email'] . '<br>';
echo 'To: ';
foreach($msg->To() as $k=>$v) {
echo $k . ' ' . $v . ', ';
}
echo '<br>Subject: ' . $msg->Subject() . '<br>';
echo 'Body: ' . $msg->Body() . '<br>';
}