$oFolder = $oClient->getFolder('INBOX.Drafts');<br>
$oFolder = $oMessage = $oFolder->getMessage($uid = 2);
此功能仅从收件箱中返回或获取特定消息,但不适用于其他文件夹,例如垃圾邮件,草稿,垃圾等, 我正在使用Laravel库https://github.com/Webklex/laravel-imap#folderclass
答案 0 :(得分:0)
如上所述,埃里亚斯·苏亚雷斯(Elias Soares);使用getFolders()检索有关所有文件夹的信息。然后获取给定文件夹名称的完整路径。
然后使用该文件夹名称来获取您的消息。
您可以使用以下代码作为示例:
$mailBoxes = $oClient->getFolders();
$folder = $request->input("folder");
$folder = getFolderPath($mailBoxes,$folder);
$oFolder = $oClient->getFolder($folder);
以及getFolderPath()的代码:
function getFolderPath($mailBoxes,$folder){
$flag=0;
foreach($mailBoxes as $mailBox){
if(strtolower($folder)==strtolower($mailBox->name)){
$curFolder = $mailBox->name;
$flag=1;
}
foreach ($mailBox->children as $child){
if(strtolower($folder)==strtolower($child->name)){
$curFolder = $child->full_name;
$flag=1;
break;
}
}
if($flag==1){
break;
}
}
if(!empty($curFolder)){
$folder = $curFolder;
}
return $folder;
}