Я ищу способ захвата и управления данными электронной почты с помощью PHP. В основном, что я хочу сделать, это захватить все данные в электронном письме, а затем манипулировать этими данными в соответствии с моими спецификациями.
Например, скажем, я отправляю электронное письмо с прикрепленным файлом .zip на myemail@myproject.com, я хочу иметь возможность:
Кто-нибудь знает, как я могу сделать это эффективно с PHP. Кстати, я использую LAMP.
Благодарю.
Начните с PEAR Mail_mimeDecode
. То, что вы хотите сделать, является амбициозным, но может быть сделано.
В основном, что вы будете делать:
Поручить MTA доставлять почту с адреса на канал в ваш PHP-скрипт. Postfix и Sendmail могут обрабатывать это с помощью псевдонима типа:
myemail: "|/path/to/your/parsingscript.php"
Ваш PHP-скрипт скорее всего прочитает сообщение электронной почты из STDIN, а затем передаст строку в mimeDecode
, которая создаст объект, содержащий все части MIME.
Предполагая, что ваше сообщение было получено в $str
от STDIN , вам понравится что-то вроде этого:
$mime = Mail_mimeDecode::decode(array('include_bodies'=>TRUE, 'decode_headers'=>TRUE, 'decode_bodies'=>TRUE, 'input'=>$str)); // get the recipient To address: $to = $mime->headers['to'];