在Windows PHP 5.3.5中使用php_fileinfo.dll和finfo_open - php

我在Windows Server 2003和PHP 5.3.5&IIS 6上运行的PHP脚本中调用finfo_open时遇到麻烦。该调用始终返回致命错误:在...中调用未定义的函数finfo_open()...

通过一点阅读,我知道Windows PHP安装中默认不包含fileinfo功能,尽管我没有尝试使其工作。注释3中的说明:http://www.php.net/manual/en/fileinfo.installation.php并没有帮助,这是我能找到的最正式的说明。关于在网络上需要mime_magic dll的信息很多,但是从5.3开始似乎不再需要此文件。此外,我在http://pecl.php.net/package/Fileinfo上读到“自PHP 5.3.0起,此扩展默认为启用”。这是怎么回事?

此问题在测试服务器上。在我的本地计算机上,我具有xampp和PHP 5.3.1,并且该调用工作正常,因此在测试时我也尝试将php_fileinfo.dll从本地复制到php \ ext,但这没有任何区别(我知道版本是不同,但我读到5.3是重要的一点)。

任何建议对此将不胜感激!

    $finfo = finfo_open(FILEINFO_MIME_TYPE);
    $mime = finfo_file($finfo, $filepath);

参考方案

您已经接近完成它,末端只缺少一些小的配置。

请参阅fileinfo usage and installation instructions:

Windows用户必须在php.ini中包含捆绑的php_fileinfo.dll DLL文件才能启用此扩展。

例如,该DLL文件与PHP 5.3.6捆绑在一起,您可以在这里找到文件:PHP For Windows - Binaries and sources Releases。它应该已经位于PHP安装的ext子目录中。如果没有,请从上述网站再次下载(选择您的PHP版本)并将其放入扩展目录。

您需要在php.ini中添加以下行,然后将其激活:

extension=php_fileinfo.dll

这是在Windows下激活PHP扩展的标准过程。您可以在以下位置找到有关如何使用PHP扩展的更多信息:Installation of extensions on Windows。如果找不到php.ini文件,请参考PHP installation instructions - Installation on Windows systems。

PHP-将日期插入日期时间字段 - php

我已在数据库中使用datetime字段存储日期,使用PHP将“今天的日期”插入该字段的正确方法是什么?干杯, 参考方案 我认为您可以使用php date()函数

php ziparchive类源代码 - php

Improve this question 我如何获取ziparchive类本身的源代码。 参考方案 假设您在谈论PHP ZipArchive class:下载PHP source code并查找适当的文件。如果您希望源代码是PHP代码,您可能会感到失望,因为源代码是用C语言编写的。或者,也可以在PHP Github Development Reposito…

PHP getallheaders替代 - php

我正在尝试从服务器上的apache切换到nginx。唯一的问题是我在PHP脚本中使用的getallheaders()函数,该函数不适用于Nginx。我已经尝试过用户在getallheaders函数上的php站点上提供的注释,但这并不返回所有请求标头。请告诉我如何解决这个问题。我真的想切换到Nginx。 参考方案 您仍然可以使用它,但是您必须像这里一样重新定义…

PHP-如何建议搜索字词,“你是说……?” - php

当使用不检索任何结果的术语搜索数据库时,我想允许“您是不是……”建议(例如Google)。例如,如果有人寻找“ jquyer””,它将输出“ did you mean jquery?”当然,建议结果必须与数据库内部的值匹配(我正在使用mysql)。您知道可以做到这一点的图书馆吗?我已经用谷歌搜索过,但是没有找到任何好的结果。或者,也许您有一个想法,该如何独自…

php:将分钟取整到最近的四分之一小时,然后执行更多操作 - php

最初的问题是这样的:取分钟数->转换为四分之一小时-> 1个四分之一小时为1个单位->输出单位我今天整天都在整理页面,几分钟前我的大脑就停止工作了,我只是不知道如何输出单位数量。我知道在此网站上发布问题会有所帮助。因此,用户输入的分钟数(不是小时和分钟,而是数分钟),站点需要输出单位数量。单位是一个刻钟。分钟总是四舍五入到最近的四分之一小时…