PHP imap script to read outlook email inbox

Here is a simple php code to read outlook email inbox. This code also contains php script to read a outlook inbox mail received from a particular email address.

Please note that the following is achieved through PHP IMAP PROTOCOL
Also, this is not a very secured method of doing it. The idea here is to reveal the concept.

<?php
  error_reporting(E_ALL ^ (E_NOTICE | E_WARNING));
  
  $incoming_mail_server = 'imap.gmail.com'; 
  //This is an example incoming mail server for gmail which you can configure to your outlook, check out the manual on Supported IMAP client list
  
  $your_email = '[email protected]'; // your outlook email ID
  $yourpassword = 'xyz' // your outlook email password
  
  $mbox   = imap_open("{$incoming_mail_server}", $your_email , $yourpassword )   or  die("can't connect: " . imap_last_error());
  $num = imap_num_msg($mbox); // read total messages in email
  $MC = imap_check($mbox);
  $msg=array();
  // Fetch an overview for all messages in INBOX
  $result = imap_fetch_overview($mbox,"$num:{$MC->Nmsgs}",0);
  foreach ($result as $overview) {
    echo 'Message no'.$overview->msgno. '<br/>';
         "{$overview->subject}<br/>";
           $check = imap_mailboxmsginfo($mbox);
      
        echo $check->Unread;
       
        echo $overview->subject;
        echo $overview->body;
        
    //code to check and display email received from a particular Email address
        if(preg_match("/[email protected]/",$overview->from,$match)){
              $msg[$overview->msgno]=$overview->subject;
              imap_delete($mbox,$overview->msgno);
        }
        else{
              imap_delete($mbox,$overview->msgno);
        }
  }
       imap_close($mbox); 
?>

Here is a list of Supported IMAP client list

Hit Like if this article was useful to you!

Average rating / 5. Vote count:

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Leave a Reply

Your email address will not be published. Required fields are marked *