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