PHP - Funzione imap_open ()

Le funzioni PHP − IMAP ti aiutano ad accedere a un account di posta elettronica, IMAP sta per Internet Mail Access Protocol usando queste funzioni puoi anche lavorare con i protocolli NNTP, POP3 e metodi di accesso alla casella di posta locale.

Il imap_open() la funzione accetta tre valori stringa che rappresentano il nome / URL della cassetta postale, il nome utente e la password come parametri e apre il flusso alla cassetta postale specificata.

Sintassi

imap_open ($mailbox, $username, $password [$options, $n_retries, $params);

Parametri

Suor n Parametro e descrizione
1

mailbox(Mandatory)

Questo è un valore stringa che rappresenta il nome / URL della cassetta postale. Contiene il nome del server, il percorso della cassetta postale.

2

username(Mandatory)

Questo è un valore stringa che rappresenta il nome utente.

3

password(Mandatory)

Questo è un valore stringa che rappresenta la password.

4

options (Optional)

Questo è un valore intero che rappresenta il parametro opzionale che può essere uno o più dei seguenti:

  • OP_READONLY

  • OP_ANONYMOUS

  • OP_HALFOPEN

  • CL_EXPUNGE

  • OP_DEBUG

  • OP_SHORTCACHE

  • OP_SILENT

  • OP_PROTOTYPE

  • OP_SECURE

5

retries (Optional)

Questo è un valore intero che rappresenta il numero massimo di tentativi.

6

params (Optional)

Questo è un valore di matrice che rappresenta i parametri di connessione.

Valori restituiti

Questa funzione restituisce un oggetto flusso IMAP in caso di successo e un valore booleano FALSE in caso di errore.

Versione PHP

Questa funzione è stata introdotta per la prima volta nella versione 4 di PHP e funziona in tutte le versioni successive.

Esempio

Di seguito è riportato un programma php che cerca di stabilire una connessione con un particolare account Gmail imap_open() -

<html>
   <body>
      <?php
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $mailbox = imap_open($url, $id, $pwd);
         if($mailbox){
            print("Connection established....");
         } else {
            print("Connection failed");
         }
      ?>
   </body>
</html>

Produzione

Il programma di cui sopra genera il seguente output:

Connection established....

Esempio

Di seguito è riportato un altro esempio di questa funzione in questo abbiamo stabilito la connessione a una particolare casella di posta e recuperato il contenuto del messaggio in essa.

<html>
   <body>
      <?php
         //Establishing connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         $imap = imap_open($url, $id, $pwd);
         print("Connection established...."."<br>");
         //Searching emails
         $emailData = imap_search($imap, '');
        
         if (! empty($emailData)) {  
            foreach ($emailData as $msg) {
               $msg = imap_fetchbody($imap, $msg, "1");
               print(quoted_printable_decode($msg)."<br>");                
            }    
         } 
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Produzione

Il programma di cui sopra genera il seguente output:

Connection established....
This is a test mail #1.
--0000000000001bf26805af905277 Content-Type: text/plain; charset="UTF-8" test 
mail #2 --0000000000001bf26805af905277 Content-Type: text/html; charset="UTF-8" 
Content-Transfer-Encoding: quoted-printable

test mail #2
--0000000000001bf26805af905277--
test mail #3
test mail #4

Esempio

Di seguito è riportato l'esempio di questa funzione con parametri opzionali.

<html>
   <body>
      <?php
         //Establishing the connection
         $url = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX";
         $id = "[email protected]";
         $pwd = "cohondob_123";
         
         //Optional parameters
         $options = OP_READONLY;
         $retries = 10;
		 
         $mailbox = imap_open($url, $id, $pwd, $options, $retries);
         if($mailbox){
            print("Connection established....");
         } else {
            print("Connection failed");
         }
      ?>
   </body>
</html>

Il programma di cui sopra genera il seguente output:

Connection established....