require ('pop3.class.inc'); $pop3 = new POP3; //CONFIGURATION $mail_server="YOUR_POP3_EMAIL_SERVER"; $username="USERNAME"; $pwd="PASSWORD"; // Connect to mail server $do = $pop3->connect ($mail_server); if ($do == false) { die($pop3->error); } // Login to your inbox $do = $pop3->login ($username, $pwd); if ($do == false) { die($pop3->error); } // Get office status $status = $pop3->get_office_status(); if ($status == false) { die($pop3->error); } $count = $status['count_mails']; if ($count == '0') { echo 'There are no new e-mails'; } for ($i = 1; $i <= $count; $i++) { $email = $pop3->get_mail($i); if ($email == false) { echo $pop3->error; continue; } $email = parse_email ($email); /* HERE ARE THE GOODIES */ echo "MAIL#$i:
"; echo $subject=$email['headers']['Subject']."
"; echo $email["message"]; //pop3->delete_mail($i) //delete this email, yes.. it will delete your emails /* GOODIES END */ } $pop3->close(); function parse_email ($email) { // Split header and message $header = array(); $message = array(); $is_header = true; foreach ($email as $line) { if ($line == '
' . "\r\n") continue; if ($line == ' ' . "\r\n") continue; if ($line == ' ' . "\r\n") continue; if ($line == '
' . "\r\n") { $is_header = false; continue; } if ($is_header == true) { $header[] = $line; } else { $message[] = $line; } } // Parse headers $headers = array(); foreach ($header as $line) { $colon_pos = strpos($line, ':'); $space_pos = strpos($line, ' '); if ($colon_pos === false OR $space_pos < $colon_pos) { // attach to previous $previous .= "\r\n" . $line; continue; } // Get key $key = substr($line, 0, $colon_pos); // Get value $value = substr($line, $colon_pos+2); $headers[$key] = $value; $previous =& $headers[$key]; } // Parse message $message = implode('', $message); // Return array $email = array(); $email['message'] = $message; $email['headers'] = $headers; return $email; }