PHP - Función imap_sort ()

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_sort() acepta un valor de recurso que representa un flujo IMAP y un valor de cadena que representa los criterios de búsqueda y un valor entero (para ordenar) como parámetros y recupera los mensajes en el buzón dado en el orden especificado.

Sintaxis

imap_sort($imap_stream, $criteria, [$options, $charset]);

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

criteria (Mandatory)

Este es un valor de cadena que representa los criterios de búsqueda.

3

reverse (Mandatory)

Este es un valor entero que representa el orden de clasificación. 1 para clasificación inversa.

4

options (Optional)

Este es un valor de cadena que representa el valor opcional SE_UID. Al configurar, la matriz devuelta contiene UID en lugar de secuencias de mensajes.

5

search_criteria (Optional)

Este es un valor de cadena que representa los criterios de búsqueda.

6

$charset (Optional)

Este es un valor de cadena que representa el juego de caracteres MIME que se utilizará durante la búsqueda.

Valores devueltos

Esta función devuelve una matriz que contiene los números de mensaje / UID que representan los mensajes en el buzón dado en orden ordenado.

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_sort() 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>");
		 
         //Fetching the contents of a message
         print("Result of sorting: "."<br>");
		 
         $res = imap_sort($imap, SORTDATE, 0);
         print_r($res);
    
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Results of sorting:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7)

Ejemplo

A continuación se muestra otro ejemplo de esta 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>");
		 
         //Fetching the contents of a message
         print("Contents of the first message: "."<br>");
		 
         print_r(imap_sort($imap, SORTDATE, 0));
         print("<br>");
         print_r(imap_sort($imap, SORTARRIVAL, 0));
         print("<br>");
         print_r(imap_sort($imap, SORTFROM, 0));
         print("<br>");
         print_r(imap_sort($imap, SORTSUBJECT, 0));
         print("<br>");
         print_r(imap_sort($imap, SORTTO, 0));
         print("<br>");
         print_r(imap_sort($imap, SORTCC, 0));
         print("<br>");
         print_r(imap_sort($imap, SORTSIZE, 0));
    
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Contents of the first message:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 6 [5] => 5 [6] => 7 )

Ejemplo

A continuación se muestra un ejemplo de la función anterior con parámetros opcionales:

<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>");
		 
         //Fetching the contents of a message
         print("Contents of the first message: "."<br>");
		 
         $res = imap_sort($imap, SORTDATE, 1, SE_UID, "ALL", "");		 
         foreach ($res as $msg) {
            print($msg);
            print("<br>");     
            print("<br>");        			 
         }    
         //Closing the connection
         imap_close($imap);   
      ?>
   </body>
</html>

Salida

Esto generará la siguiente salida:

Connection established....
Contents of the first message:
52

51

50

49

42

20

19