PHP - Funzione imap_errors ()

Le funzioni PHP − IMAP ti aiutano ad accedere agli 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_errors()la funzione recupera tutti i messaggi di errore verificatisi nella pagina corrente e li restituisce sotto forma di array. Una volta chiamata questa funzione, lo stack degli errori viene cancellato.

Sintassi

imap_errors();

Parametri

Questa funzione non accetta alcun parametro.

Valori restituiti

Questa funzione restituisce un array contenente gli errori verificatisi nella pagina corrente, in caso di successo, e un Booleano che è FALSE in caso di fallimento.

Versione PHP

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

Esempio

L'esempio seguente mostra l'utilizzo di imap_alerts() funzione -

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

Produzione

Questo genera il seguente output:

Warning: imap_open(): Couldn't open stream {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX in C:\Apache24\htdocs\examples\demo2.html on line 7

Errors:

Notice: Unknown: [AUTHENTICATIONFAILED] Invalid credentials (Failure) (errflg=1) in Unknown on line 0

Notice: Unknown: [AUTHENTICATIONFAILED] Invalid credentials (Failure) (errflg=1) in Unknown on line 0

Notice: Unknown: [AUTHENTICATIONFAILED] Invalid credentials (Failure) (errflg=1) in Unknown on line 0

Notice: Unknown: Too many login failures (errflg=2) in Unknown on line 0

Esempio

Di seguito è riportato un altro esempio di questa funzione:

<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);
         print("Connection established....");
         print("<br>");

         //Creating mailboxes
         $newmailbox1 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail1";
         $newmailbox2 = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail2";   
         $res = imap_createmailbox($mailbox, imap_utf7_encode($newmailbox1));
         $res = imap_createmailbox($mailbox, imap_utf7_encode($newmailbox2));

         //Retrieving the contents of mail boxes
         print("List of mailboxes: ");
         print("<br>");
         $list = imap_getmailboxes($mailbox, $url, "*");
         print("Errors: <br>");    
         
         foreach ($list as $key => $val) {
            print_r($val->name);
            print("<br>");
            print(imap_errors());			
         }
      ?>
   </body>
</html>

Produzione

Questo genererà il seguente output:

Connection established....
List of mailboxes:
Errors:
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX

Notice: Array to string conversion in C:\Apache24\htdocs\examples\trail.html on line 25
Array{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.changed_mail1
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.changed_mail2
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.de