php - 获取文件的 mimetype 作为字符串 (imap_fetchbody)

标签 php linux imap

如果文件是文件系统中的文件,您可以这样做:

shell_exec("file -bi $file")

但是如果文件是一个字符串(还没有保存为文件)怎么办呢?

字符串/文件是使用 imap_fetchbody() 从电子邮件中提取的

编辑

$body = imap_fetchbody($this->stream, $this->msgno, $section);

$finfo = new finfo(FILEINFO_MIME);
echo $finfo->buffer($body) . "\n";

$file = Init::$dynamic['data_path'].$this->msgno.'_'.$part->dparameters[0]->value;
imap_savebody($this->stream, $file, $this->msgno, $section);

echo $finfo->file($file) . "\n";

$finfo->buffer()$finfo->file() 都返回text/plain; charset=us-ascii 即使是 PDF、PNG 等?

最佳答案

关于php - 获取文件的 mimetype 作为字符串 (imap_fetchbody),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8013484/

相关文章:

php - 简单的 MySql 查询在 php 中不起作用

javascript - jsPDF - 将 pdf 发送到服务器最终损坏

linux - 允许从一个站点播放 rtmp(带有 rtmp 模块的 nginx)

c++ - 当由 IDE 运行时,如何让终端窗口在 linux 控制台应用程序中自动关闭

python - python 的多处理池 imap 的键盘中断

php - 从ajax调用上传blueimp文件

javascript - 尝试通过 AJAX 验证 Laravel Form 时出现错误 422

linux - 使用 Luasec 产生 "module ' ssl.core' not found”

java imap 从某个日期开始获取消息

java - 无法获取 MimeMessage 的 message_ID