Please note that the UID is NOT unique.
UID of the email may be not unique on the server (2 messages in different folders may have same UID).
Basically, don't use the UID as a unique identifier.
    (PHP 4, PHP 5, PHP 7)
imap_body — Read the message body
$imap_stream
   , int $msg_number
   [, int $options = 0
  ] )
   imap_body() returns the body of the message,
   numbered msg_number in the current
   mailbox.
  
imap_body() will only return a verbatim copy of the message body. To extract single parts of a multipart MIME-encoded message you have to use imap_fetchstructure() to analyze its structure and imap_fetchbody() to extract a copy of a single body component.
imap_stream由 imap_open() 返回的 IMAP 流。
msg_numberThe message number
options
       The optional options are a bit mask
       with one or more of the following:
       
FT_UID - The msg_number is a UID
         
        FT_PEEK - Do not set the \Seen flag if not already set
         
        FT_INTERNAL - The return string is in internal format, will
          not canonicalize to CRLF.
         
        Returns the body of the specified message, as a string.
Please note that the UID is NOT unique.
UID of the email may be not unique on the server (2 messages in different folders may have same UID).
Basically, don't use the UID as a unique identifier.
    
NB the message numbers start from 1 not 0 as normally used for iterating.
    
Simple example on how to read body message of the recent mail.
<?php
$imap = imap_open("{pop.example.com:995/pop3/ssl/novalidate-cert}", "username", "password");
if( $imap ) {
    
     //Check no.of.msgs
     $num = imap_num_msg($imap);
     //if there is a message in your inbox
     if( $num >0 ) {
          //read that mail recently arrived
          echo imap_qprint(imap_body($imap, $num));
     }
     //close the stream
     imap_close($imap);
}
?>