PHP - Funzione imap_delete ()

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_delete() accetta un valore di risorsa che rappresenta un flusso IMAP, un valore intero che rappresenta un messaggio nella cassetta postale come parametri e contrassegna i messaggi specificati per l'eliminazione.

Una volta contrassegnati i messaggi desiderati utilizzando questa funzione, verranno rimossi dalla casella vocale ogni volta che la funzione imap_expunge() viene richiamato o, ogni volta che il close() viene richiamata utilizzando CL_EXPLUNGE come parametro.

Sintassi

imap_delete($imap_stream, $msg [, $options]);

Parametri

Suor n Parametro e descrizione
1

imap_stream (Mandatory)

Si tratta di un valore stringa che rappresenta un flusso IMAP, valore di ritorno di imap_open() funzione.

2

msg (Mandatory)

Questo è un valore intero che rappresenta il messaggio / numero di posta, che deve essere contrassegnato per l'eliminazione.

3

options(Optional)

Questo è un valore intero che rappresenta un valore FT_UID opzionale, se specificato il valore passato come argomento msg viene trattato come UID.

Valori restituiti

Questa funzione restituisce un valore booleano che è TRUE in caso di successo e 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_delete() funzione -

<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>");
		 		 
         //Marking message for deletion
         $res = imap_delete($imap, 5);
         if($res){
           print("Message marked for deletion"."<br>");
         }		 
         //Deleting messages
         $res = imap_expunge($imap);	 	
         if($res){
            print("Message deleted");
         }		 		 
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Produzione

Questo genererà il seguente output:

Connection established....
Message marked for deletion
Message deleted

Esempio

Di seguito è riportato un altro esempio della funzione precedente:

<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>");
         print("Contents  of inbox: "."<br>");
         $emailData = imap_search($imap, '');
         foreach ($emailData as $msg) {
            $msg = imap_fetchbody($imap, $msg, "1");
            print(quoted_printable_decode($msg)."<br>");                
         }    
         //Marking message for deletion
         imap_delete($imap, 5);
         
         //Deleting messages
         imap_expunge($imap);	 		 
         print("Contents of inbox after deletion: "."<br>");
         
         $emailData = imap_search($imap, '');
         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

Questo genererà il seguente output:

Connection established....
Contents of inbox:
#sample_mail1
#sample_mail2
#sample_mail3
#sample_mail4
#sample_mail5
Contents of inbox after deletion:
#sample_mail1
#sample_mail2
#sample_mail3
#sample_mail4

Esempio

Di seguito è riportato un esempio della funzione precedente con parametri opzionali:

<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>");
		
         //Marking message for deletion
         $res = imap_delete($imap, imap_uid($imap, 5), FT_UID );
         if($res){
            print("Message marked for deletion"."<br>");
         }		 
         //Deleting messages
         $res = imap_expunge($imap);	 	
         if($res){
            print("Message deleted");
         }		 		 
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Produzione

Questo genererà il seguente output:

Connection established....
Message marked for deletion
Message deleted