PHP - Función imap_list ()

Las funciones PHP − IMAP le ayudan a acceder a las cuentas de correo electrónico, IMAP significa IInternet Mafligir Aacceso Protocol al utilizar estas funciones también puede trabajar con protocolos NNTP, POP3 y métodos de acceso al buzón local.

los imap_list() La función acepta un valor de recurso que representa un flujo IMAP, dos valores de cadena que representan la especificación del servidor y la jerarquía del buzón como parámetros y lee la lista de buzones especificados.

Sintaxis

imap_list($imap_stream, $ref, $pattern);

Parámetros

No Señor Descripción de parámetros
1

imap_stream (Mandatory)

Este es un valor de cadena que representa un flujo IMAP, valor de retorno del imap_open() función.

2

ref (Mandatory)

Este es un valor de cadena que representa la especificación del servidor.

3

pattern (Mandatory)

Este es un valor de cadena que representa el inicio de la búsqueda de la jerarquía del buzón.

Valores devueltos

Esta función devuelve una matriz que contiene los nombres de los buzones de correo en caso de éxito y devuelve un valor booleano FALSO en caso de error.

Versión PHP

Esta función se introdujo por primera vez en PHP versión 4 y funciona en todas las versiones posteriores.

Ejemplo

El siguiente ejemplo demuestra el uso de imap_list() función -

<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>");
		 
         //list of mailboxes
         $res = imap_list($imap, $url, "*");
         print_r($res);		 

         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Array ( 
   [0] => {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX [1] => 
   {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail1 [2] => 
   {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail2 [3] => 
   {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail3 [4] => 
)

Ejemplo

A continuación se muestra otro ejemplo de esta función:

<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 a mailbox
         $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
         $list = imap_list($mailbox, $url, "*");
         foreach ($list as $key => $val) {
            print_r($val);
            print("<br>");
         }	 
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail1
{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX.test_mail2