使用 PHP 从 OS X 提取文件中嵌入的创建者信息?
在 OS X 中,如果我使用 Photoshop(例如)创建 PNG 文件,我可以选择保存不带扩展名的文件,并且 OS X 仍然可以识别该文件的类型以及使用什么应用程序打开它。
有什么方法可以让我使用 PHP 从物理文件中提取该信息吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您使用的是足够新的 PHP 版本(即 5.3)或者可以安装 PECL 扩展,您应该查看 Fileinfo 扩展,与 PHP 5.3 捆绑在一起。
引用给定示例之一,像这样的代码的一部分:
可能会给你这样的东西:
如果您坚持使用旧版本的 PHP,并且无法安装 PECL 扩展,也许
mime_content_type
函数就可以了。If you're using a recent enough version of PHP (ie 5.3) or have the possibility to install PECL extensions, you should take a look at the Fileinfo extension, that's bundled with PHP 5.3.
Quoting one of the given examples, a portion of code like this one :
Might get you something like this :
If you're stuck with an older version of PHP, and cannot install PECL extensions, maybe the
mime_content_type
function would do.PNG 文件的前八个字节始终包含以下(十进制)值:
137 80 78 71 13 10 26 10
您可以使用 PHP 读取文件头并从已知的头中推断出文件类型。您可以在互联网上轻松找到每种格式规范(JPG、位图、GIF、PNG 等)的信息。
在这里,我将首先为您提供:
- PNG 规范
The first eight bytes of a PNG file always contain the following (decimal) values:
137 80 78 71 13 10 26 10
You can use PHP to read file headers and deduce the file type from known headers. you can find this information quite readily on the internet in each format's spec (JPG, Bitmaps, GIF, PNG, whatever)
Here, I'll start you off:
- PNG Spec