Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要使用imap php保存电子邮件副本,然后才能在outlook express中打开_Php_Outlook_Imap_Express_Eml - Fatal编程技术网

需要使用imap php保存电子邮件副本,然后才能在outlook express中打开

需要使用imap php保存电子邮件副本,然后才能在outlook express中打开,php,outlook,imap,express,eml,Php,Outlook,Imap,Express,Eml,我有一个IMAP PHP脚本,它可以连接和读取邮箱中的电子邮件 我想将电子邮件保存在服务器磁盘上,并将其命名为testing.eml文件。因此,当我稍后删除这些电子邮件时,可以在outlook express中查看。有什么想法可以实现这一点吗 谢谢,请参见;以下是核心功能: $mbox = imap_open ("{localhost:993/imap/ssl}INBOX", "user_id", "password"); $messa

我有一个IMAP PHP脚本,它可以连接和读取邮箱中的电子邮件

我想将电子邮件保存在服务器磁盘上,并将其命名为testing.eml文件。因此,当我稍后删除这些电子邮件时,可以在outlook express中查看。有什么想法可以实现这一点吗

谢谢,请参见;以下是核心功能:

$mbox = imap_open ("{localhost:993/imap/ssl}INBOX", "user_id", "password");
$message_count = imap_num_msg($mbox);
if ($message_count > 0) {
    $headers = imap_fetchheader($mbox, $message_count, FT_PREFETCHTEXT);
    $body = imap_body($mbox, $message_count);
    file_put_contents('/your/file/here.eml', $headers . "\n" . $body);
}
imap_close($mbox);
这里发生了什么:

  • 打开邮箱
  • 获取消息计数
  • 如有:
    • 获取最后一个的标题
    • 拿到最后一具尸体
    • 将它们一起保存在一个文件中
  • 关闭邮箱
$mbox=imap_打开(“{localhost:993/imap/ssl}收件箱”,“用户id”,“密码”)$file='/your/file/eml/test.eml'$f=fopen($file,'w+');imap_存储体($mbox,$f,$messageNumber);//此处$messageNumber是您要保存的消息编号fclose($f);