Windows users: just edit php.ini and uncomment this line:
extension=php_fileinfo.dll
Remember to restart Apache for new php.ini to take effect.
从 PHP 5.3.0 开始,本扩展是默认开启的。 在之前的版本中,fileinfo 是一个 PECL 扩展,但是已经不再持续维护。 5.3+ 之前的版本, 可以使用 » 停止使用的 PECL 扩展。
Windows 用户需要在 php.ini 中开启绑定的 php_fileinfo.dll DLL 来启用本扩展。
PHP 中绑定了 libmagic 库,某些 PHP 版本变更中也可能包含此库。 在 PHP fileinfo 扩展的源代码中,有 libmagic.patch 文件, 这是 libmagic 库的补丁包文件。
PHP 版本 | 更新的 libmagic 版本 | 说明 |
---|---|---|
5.3.2 | 5.03 | |
5.3.0 | 5.02 |
Windows users: just edit php.ini and uncomment this line:
extension=php_fileinfo.dll
Remember to restart Apache for new php.ini to take effect.
when you are compiling php from source yourself, with --disable-all
you need --enable-fileinfo
I found that while using the magic files from GnuWin 4.23 worked great for the PECL extension with PHP 5.2 on Win32, when I started migrating to PHP 5.3 all of a sudden Fileinfo no longer worked. Updating the magic files to the latest version (4.26 at the time of this writing) worked like a charm.
I guess the bundled version of Fileinfo uses the new mime magic format while the old PECL version uses the old format.
I need to add an addendum to the previous instalation steps.
Recently gnuwin32 project made a new release of file package (4.24). Binary release does not contain all needed magic files for fileinfo extension.
Instead of downloading latest version of file package (4.24) just get previous one (4.23) which does contain all of the needed files.
It is really strange to find that installing filenfo extension on windows is not yet fully explained. Here are the latest most up-to-date steps to make this work:
1. Add php_fileinfo.dll to the list of enabled extensions
extension=php_fileinfo.dll
2. Download GNU file package for windows
get it from here: http://gnuwin32.sourceforge.net/downlinks/file-bin-zip.php
Extract the folder from the archive called shared\file which contains 4 magic files (magic, magic.mgc, magic.mime, magic.mime.mgc).
3. Place these 4 files in a known place
4. Add system enviroment variable MAGIC that points to the file called magic. For example if you placed magic files in folder called magic in c:\php that means that the propper path is c:\php\magic\magic
5. If you use IIS restart it and fileinfo is ready for use
5a. If you use apache you will have to restart operating system for the service to acknowledge MAGIC env. variable.