php – 为什么imap uid不是唯一的?在不同的文件夹?
|
我将我的邮箱元素保存到 mysql数据库(在我的Intranet中执行快速搜索,因为imap_search’太慢了). 我正在连接到服务器和文件夹,并迭代消息. 简化代码: $numMsg = imap_num_msg($conn);
for($i=1;$i<=$numMsg;$i++){
$uid = imap_uid($conn,$i);
echo("msg_num:".$i." - uid:".$uid);
}
我得到这样的东西:
这是完全错误的! uid不应该是唯一的吗? 我在我拥有的5个子文件夹中以及在收件箱中的收件箱中得到这个UID我得到的权利(msg_num:5 – uid:1503msg_num:6 – uid:1504msg_num:7 – uid:1506) 是的,UID只对每个文件夹唯一.消息的完整持久唯一ID是文件夹名称,文件夹UIDVALIDITY和消息UID的元组.在正确实现的服务器上,该元组将只引用一条消息.例如:(SENT,1,100)表示发送文件夹的第一个版本中ID为100的邮件. UIDVALIDITY往往是大约10位数字,如果文件夹被删除并重新创建或需要由服务器软件重新索引/重新生成,则应该更改. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
