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

时间:2011-11-04 17:33:59

标签: 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";

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

1 个答案:

答案 0 :(得分:2)