使用PHP从OS X中提取嵌入在文件中的Creator信息?

时间:2009-09-30 21:00:35

标签: php metadata

在OS X中,如果我使用Photoshop(例如)创建PNG文件,我可以选择保存没有扩展名的文件,OS X仍然可以识别它是什么类型的文件以及用什么类型的文件打开它

我有什么方法可以使用PHP从物理文件中提取信息吗?

2 个答案:

答案 0 :(得分:1)

PNG文件的前八个字节始终包含以下(十进制)值:    137 80 78 71 13 10 26 10

您可以使用PHP来读取文件头并从已知头中推断出文件类型。您可以在互联网上以各种格式的规格(JPG,Bitmaps,GIF,PNG等)轻松找到这些信息

在这里,我将启动你:   - PNG Spec

答案 1 :(得分:1)

如果您使用的是最新版本的PHP(即5.3)或者可以安装PECL扩展,那么您应该查看与PHP 5.3捆绑在一起的Fileinfo extension

引用the given examples之一,这部分代码如下:

<?php
$finfo = finfo_open(FILEINFO_MIME_TYPE); // return mime type ala mimetype extension
foreach (glob("*") as $filename) {
    echo finfo_file($finfo, $filename) . "\n";
}
finfo_close($finfo);
?>

可能会得到这样的东西:

text/html
image/gif
application/vnd.ms-excel


如果您遇到旧版本的PHP,并且无法安装PECL扩展,那么mime_content_type函数可能会这样做。