PHP - Função imap_sort ()

As funções PHP-IMAP ajudam você a acessar contas de e-mail, IMAP significa IInternet Maflição Acesso Protocol usando essas funções, você também pode trabalhar com NNTP, protocolos POP3 e métodos de acesso à caixa de correio local.

o imap_sort() aceita um valor de recurso que representa um fluxo IMAP e um valor de string que representa os critérios de pesquisa e um valor inteiro (para classificação) como parâmetros e recupera as mensagens na caixa de correio fornecida na ordem de classificação especificada.

Sintaxe

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

Parâmetros

Sr. Não Parâmetro e Descrição
1

imap_stream (Mandatory)

Este é um valor de string que representa um fluxo IMAP, valor de retorno do imap_open() função.

2

criteria (Mandatory)

Este é um valor de string que representa os critérios de pesquisa.

3

reverse (Mandatory)

Este é um valor inteiro que representa a ordem de classificação. 1 para classificação reversa.

4

options (Optional)

Este é um valor de string que representa o valor opcional SE_UID. Na configuração, o array retornado contém UIDs em vez de sequências de mensagens.

5

search_criteria (Optional)

Este é um valor de string que representa os critérios de pesquisa.

6

$charset (Optional)

Este é um valor de string que representa o conjunto de caracteres MIME a ser usado durante a pesquisa.

Valores Retornados

Esta função retorna uma matriz que contém os números / UIDs das mensagens que representam as mensagens na caixa de correio fornecida em ordem classificada.

Versão PHP

Esta função foi introduzida pela primeira vez no PHP Versão 4 e funciona em todas as versões posteriores.

Exemplo

O exemplo a seguir demonstra o uso do imap_sort() função -

<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>

Resultado

Isso irá gerar a seguinte saída -

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

Exemplo

A seguir está outro exemplo desta função -

<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>

Resultado

Isso irá gerar a seguinte saída -

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 )

Exemplo

A seguir está um exemplo da função acima com parâmetros opcionais -

<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>

Resultado

Isso irá gerar a seguinte saída -

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

51

50

49

42

20

19