получить содержимое электронной почты в строку в php - PullRequest
1 голос
/ 25 октября 2011

Я пытаюсь преобразовать тело письма в строку, чтобы выполнить некоторую обработку, приведенный ниже скрипт получает письмо, но не может получить содержимое в строку.Какие-нибудь мысли?Ура, D

/* try to connect */
$inbox = imap_open($hostname,$username,$password) or die('Cannot connect to Gmail: ' .     imap_last_error());
/* grab emails */
$emails = imap_search($inbox,'ALL');
/* if emails are returned, cycle through each... */
if($emails) {  
/* begin output var */
$output = '';  
/* put the newest emails on top */
rsort($emails);  
/* for every email... */
foreach($emails as $email_number) {
/* get information specific to this email */
$overview = imap_fetch_overview($inbox,$email_number,0);
$message = imap_fetchbody($inbox,$email_number,2);    
/* output the email header information */    
$output.= '<div class="toggler '.($overview[0]->seen ? 'read' : 'unread').'">';
$output.= '<span class="subject">subject'.$overview[0]->subject.'</span> ';
$output.= '<span class="from">'.$overview[0]->from.'</span>';
$output.= '<span class="date">on '.$overview[0]->date.'</span>';
$output.= '</div>';    
/* output the email body */
$output.= '<div class="body">'.$message.'</div>';
$pos = strpos("FIND_THIS", $message);
if ($pos !== false) {
    print "found<br/>";
}
else {
    print " not found <br/>";
}
}  
 echo $output;
} 
/* close the connection */
imap_close($inbox);

1 Ответ

1 голос
/ 25 октября 2011

Есть ли в этом электронном письме раздел 2? Если это текстовое электронное письмо, то будут только 0 (заголовки) и 1 (тело). Разделы содержания подробно описаны здесь: http://ca3.php.net/manual/en/function.imap-fetchbody.php#89002

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...