exif_imagetype在窗口中不起作用


exif_imagetype is not working in windows

我正在使用cakephp 2.4在需要创建图像上传工具的窗口中开发应用程序。但是当我使用exif_imagetype时,它会给我致命的错误。所以使用此代码我检查了是否安装了 exif 工具

if (function_exists('exif_imagetype')) {
echo "This function is installed";
} else {
echo "It is not";
}

它显示未安装exif工具。但是在php.ini我可以看到这部分

;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
extension=php_mbstring.dll
;extension=php_exif.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll

我不确定出了什么问题。任何人都可以帮我解决这个问题。我的 php 版本是 5.4.3,我正在使用wampserver

EXIF扩展是PHP发行版的标准部分,但必须在php.ini文件中启用它才能使用其功能。在 Windows 上,EXIF扩展名还依赖于 mbstring,这是一种提供多字节字符串解析的扩展名。此外,在 php.ini 文件中启用扩展的顺序确实很重要。如果在 mbstring 之前启用了 exif,则EXIF函数在运行时将不可用。

必须在 EXIF 之前启用 mbstring 扩展!

在您的情况下已启用,但php_exif.dll没有。

如果您需要在您的环境中使用EXIF功能,无论是开发还是生产,您都需要记住这一点。默认情况下,扩展名在 php.ini 文件中按字母顺序排序。当您开始用头撞墙时,这很容易遇到这种情况,因为即使您同时启用了 EXIF 和 mbstring 扩展,您也没有意识到为什么function_exists('exif_imagetype')一直返回 FALSE。

删除注释;并启用EXIF功能

删除分号 (;)

以前:

;extension=php_exif.dll

后:

extension=php_exif.dll

保存 php.ini然后重新启动 wampserver