imap_search找到的电子邮件顺序是什么?

时间:2019-02-18 15:23:06

标签: php imap php-imap

我正在使用imap_search检索邮箱中的所有电子邮件。

请参阅:http://php.net/manual/en/function.imap-search.php

可以安全地假设imap_search()检索按日期排序的电子邮件,最早的是最早的吗?从我的测试看来确实如此,但是我找不到关于实际订购的任何文档。

如果按日期排序,则可以使用array_reverse()和array_splice()获得最新的10个左右。

示例代码:

<?php
$conn   = imap_open('{imap.example.com:993/imap/ssl}INBOX', 'foo@example.com', 'pass123', OP_READONLY);

$msgnos = imap_search($conn, 'ALL');

?>

1 个答案:

答案 0 :(得分:1)

与其对文档中未指定的顺序进行假设,并且可以在任何版本中进行更改,请对其进行排序:

imap_sort()

imap_sort ( resource $imap_stream , int $criteria , int $reverse [, int $options = 0 [, string $search_criteria = NULL [, string $charset = NULL ]]] ) : array
  

通过给定的参数获取并排序消息编号。

它甚至需要 search_criteria ,并允许您在同一调用中对其进行反向