Php 获取特定的imap文件夹名称
我需要获取imap文件夹的名称,通常我会这样做Php 获取特定的imap文件夹名称,php,email,imap,Php,Email,Imap,我需要获取imap文件夹的名称,通常我会这样做 <?php $mbox = imap_open(SERVER,USERNAME,PASSWORD) or die("can't connect: " . imap_last_error()); $list = imap_getmailboxes($mbox, SERVER, "*"); if (is_array($list)) { foreach ($list as $key => $val) {
<?php
$mbox = imap_open(SERVER,USERNAME,PASSWORD)
or die("can't connect: " . imap_last_error());
$list = imap_getmailboxes($mbox, SERVER, "*");
if (is_array($list)) {
foreach ($list as $key => $val) {
echo "($key) ";
echo imap_utf7_decode($val->name) . ",";
echo "'" . $val->delimiter . "',";
echo $val->attributes . "<br />\n";
}
} else {
echo "imap_getmailboxes failed: " . imap_last_error() . "\n";
}
imap_close($mbox);
?>
这是一个非常棘手的问题。文件夹名称完全取决于服务器的实现。不同的邮件程序有不同的文件夹名称模式。如果您计划将此代码用于通用目的,则没有解决方案。无法通过名称标识文件夹类型 由于以下原因,即使对于特定的邮件收件人,也很难识别“已发送邮件”文件夹: 如果您计划使用正则表达式或模式匹配,那么用户可以自由创建一个名为Sent-Ansh、SentMailAnsh或AnshSentMail的用户文件夹 其次,像Outlook(我想是2010)for IMAP这样的客户端使您能够灵活地将发送的邮件存储在特定文件夹中,因此即使系统有一个名为“Sent mails”的文件夹,用户也可能希望将这些邮件存储在名为“AnshSend”的新文件夹中
因此,我建议您根据自己的需求分析情况。谢谢,我目前正在做的只是将电子邮件文件夹名称放入配置文件中。用户需要配置文件夹名称。