到目前为止我采取的措施:
Fatal error: Class 'Imagick' not found
错误。当前版本:
我运行的是旧版本的PHP,并且Imagick正常运行,然后我更新了PHP(和Imagick DLL以及它),现在我似乎无法让它工作。
看phpinfo( )
,我没有看到Imagick列在那里,所以它似乎根本没有加载模块。这很奇怪,因为我在启动Apache时没有遇到任何错误。
我已尝试过几乎所有关于在Windows上安装Imagick for PHP的编写和演练,但它们似乎都是为旧版本的PHP编写的。
有人可以帮我安装并运行吗?似乎只是缺少一个我似乎无法弄清楚的简单步骤。如果您需要更多信息,请询问。我会尽力帮助你。
答案 0 :(得分:31)
我在开发系统的Windows 8.1专业版上安装了 php 5.6 NTS x64
。
编辑:此过程也适用于Windows 10专业版。
我无法使用较旧版本的ImageMagick使用Imagick使用PHP,因为在接受的答案中很难找到需要确切安全二进制文件的镜像(在接受的答案中镜像上的二进制文件作为不同版本下载比上市)。
在以下所有步骤中,请确保将PHP体系结构(x86 / x64和NTS / TS)与二进制体系结构相匹配。如果您使用的是PHP x86 - 请使用x86(或32位)版本替换x64版本的下载。这同样适用于PHP的线程安全(TS)和非线程安全(NTS)版本。
我终于通过执行以下操作完成了所有工作:
(3.3.0RC1)
。
php_imagick.dll
提取至 D:\php5.6\ext
CORE_RL_*.dll
文件解压缩为 D:\php5.6
- 确保 D:\php5.6
也是添加到系统环境变量的PATH
extension = php_imagick.dll
添加到 D:\php5.6\php.ini
(ImageMagick 6.9.1-2 Q16 x64)
以及缺少支持的格式 D:\php5.6\bin
- 确保选中Add Path to Environment Variables
选项或手动添加 }。convert --version
显示正确的版本 CORE_RL_*.dll
中之前提取的 D:\php5.6
文件(它们将通过ImageMagick路径加载 - 否则您的PHP安装可能会使用PECL dlls变得不稳定 D:\php5.6\bin
,以便能够将PDF转换为http://sourceforge.net/projects/ghostscript/ 中的图像,并确保与您的安装架构相匹配 我不需要为Imagick添加MAGICK_HOME
来使用PHP内置Web服务器或CGI,但使用mod_php
的Apache可能需要它。确保运行PHP的用户具有执行convert
的权限。这应该通过D:\php5.6\bin
继承,但是如果您选择安装到C:\Program Files
。由于权限受限,您可能会遇到问题。
图像转换的替代方法
如评论中所述,您也可以下载所需的ImageMagick版本依赖项,并将exe
目录中的dll
和bin
文件直接提取到 {{ 1}} 目录。
依赖关系可以在PECL网站http://windows.php.net/downloads/pecl/deps/
使用PECL依赖项无需直接下载和 从供应商的网站上运行匹配的ImageMagick版本安装程序。
使用PECL依赖项方法时,使用GhostScript进行PDF转换所需的排除文件存在问题。
特别注意事项
请务必重新安排您的PATH系统环境变量,以便D:\php5.6
不会覆盖%SystemRoot%\system32\convert.exe
。
通过将您的PHP路径添加到system32的左侧,如下所示:路径:D:\php5.6\bin\convert.exe
这会强制您的系统在D:\php5.6\bin;%SystemRoot%\system32;%SystemRoot%;...
D:\php5.6\bin
内查找可执行文件
将%SystemRoot%\system32
替换为您安装ImageMagick的路径或D:\php5.6\bin\convert.exe
所在的路径
https://technet.microsoft.com/en-us/library/cc723564.aspx#XSLTsection127121120120
答案 1 :(得分:8)
我终于开始工作,这是我必须做的事情: (引自http://refreshless.com/blog/imagick-pecl-imagemagick-windows/)
php_imagick.dll
文件放入PHP ext
目录以及Apache CORE_RL_*_.dll
目录中的bin
文件。MAGICK_HOME
的Environement变量添加到计算机,其值为[ImageMagick install dir]\modules\coders
。phpinfo( )
。如果这对您不起作用,请尝试不同版本的ImageMagick二进制文件和不同版本的PECL库。
答案 2 :(得分:0)
另外一种解决方案适用于3种不同的Windows安装(2个Windows 7和1个Windows 8.1):
ImageMagick-6.7.9-10-Q16-windows.exe with
<强> XAMPP-win32-1.8.3-5-VC11-Installer.exe的强>
当然,您必须将php_imagick.dll 添加到php / ext文件夹,并将添加扩展名 php_imagick.dll添加到php.ini。 执行上述所有操作后,重新启动 apache,如果它抱怨缺少内容,请重新启动计算机。
答案 3 :(得分:0)
答案 4 :(得分:0)
这是我解决的方式
我真的很难解决所有这些答案。回顾过去,我意识到其中大多数都是正确的,只是它们遗漏了一些非常重要的非常好细节。
1)。首先,在开始下载任何库或DLL之前,您要先从 php_info 开始,以找出这三个非常重要的参数。>
运行PHP_Info并检查:
- 体系结构:x86或x64。您的计算机可能是x64,但是您的php在x86上运行,所以不要假设
- 线程安全性:是或否。也很重要。
- 您的PHP版本
2)。从https://windows.php.net/downloads/pecl/deps/下载ImageMagick。 我的计算机是x64,但是我的php正在运行x86,所以我下载了ImageMagick-7.0。- -vc * -x86.zip
3)。解压缩并将所有DLL从解压缩后的bin子文件夹复制到Apache bin目录。这是一堆CORE_RL_ .dll和IM_MOD_RL _ .dll以及一些其他DLL。就我而言,[zipdownload] / bin / *->复制到-> C:\ Xampp \ apache \ bin
4)。转到http://pecl.php.net/package/imagick。您可以选择zip链接或仅选择DLL链接。我更喜欢DLL链接。就我而言,我选择了最新版本3.4.3。然后带我到https://pecl.php.net/package/imagick/3.4.3/windows。 在这里,我们必须做出另一个仔细的选择
5)。解压缩并将“ php_imagick.dll”复制到php ext 文件夹中。并将所有其他DLL文件添加到php文件夹
6)。。使用编辑器打开 php.ini 。搜索“ extension =“,并将此行 extension = php_imagick.dll 添加为其中之一。
7)。重新启动Xampp / Wamp或仅重新启动Apache并再次运行PHP_INFO。 Imagick应该显示。如果仍然看不到它,请参考此链接http://php.net/manual/en/imagick.setup.php#119084
奖金提示:您可能需要下载 Visual c ++ 14运行时。我从https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads链接中选择了最新版本。
答案 5 :(得分:0)
1,首先根据您的情况正确下载版本php_imagick程序包,我从以下位置使用php_imagick-3.4.3-7.1-ts-vc14-x64.zip。
https://windows.php.net/downloads/pecl/snaps/imagick/3.4.3/php_imagick-3.4.3-7.1-ts-vc14-x64.zip
2,然后将php_imagick-3.4.3-7.1-ts-vc14-x64.zip解压缩到C:/ php_imagick文件夹
3,接下来在php.ini中添加extension = C:/php_imagick/php_imagick.dll
4,现在将* .dll(php_imagick.dll除外)添加到您的apache虚拟主机文件中,例如:
# enable imagick start ===========
SetEnv MAGICK_HOME "C:/php_imagick"
LoadFile "C:/php_imagick/CORE_RL_bzlib_.dll"
LoadFile "C:/php_imagick/CORE_RL_cairo_.dll"
LoadFile "C:/php_imagick/CORE_RL_exr_.dll"
LoadFile "C:/php_imagick/CORE_RL_glib_.dll"
LoadFile "C:/php_imagick/CORE_RL_jp2_.dll"
LoadFile "C:/php_imagick/CORE_RL_jpeg_.dll"
LoadFile "C:/php_imagick/CORE_RL_lcms_.dll"
LoadFile "C:/php_imagick/CORE_RL_librsvg_.dll"
LoadFile "C:/php_imagick/CORE_RL_libxml_.dll"
LoadFile "C:/php_imagick/CORE_RL_lqr_.dll"
LoadFile "C:/php_imagick/CORE_RL_magick_.dll"
LoadFile "C:/php_imagick/CORE_RL_Magick++_.dll"
LoadFile "C:/php_imagick/CORE_RL_openjpeg_.dll"
LoadFile "C:/php_imagick/CORE_RL_pango_.dll"
LoadFile "C:/php_imagick/CORE_RL_png_.dll"
LoadFile "C:/php_imagick/CORE_RL_tiff_.dll"
LoadFile "C:/php_imagick/CORE_RL_ttf_.dll"
LoadFile "C:/php_imagick/CORE_RL_wand_.dll"
LoadFile "C:/php_imagick/CORE_RL_webp_.dll"
LoadFile "C:/php_imagick/CORE_RL_zlib_.dll"
LoadFile "C:/php_imagick/FILTER_analyze_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_aai_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_art_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_avs_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_bgr_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_bmp_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_braille_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_cals_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_caption_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_cin_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_cip_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_clip_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_clipboard_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_cmyk_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_cut_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_dcm_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_dds_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_debug_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_dib_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_djvu_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_dng_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_dot_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_dps_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_dpx_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_emf_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_ept_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_exr_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_fax_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_fd_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_fits_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_fpx_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_gif_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_gradient_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_gray_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_hald_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_hdr_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_histogram_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_hrz_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_html_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_icon_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_info_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_inline_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_ipl_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_jbig_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_jnx_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_jp2_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_jpeg_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_json_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_label_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mac_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_magick_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_map_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mask_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mat_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_matte_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_meta_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_miff_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mono_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mpc_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mpeg_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mpr_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_msl_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mtv_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_mvg_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_null_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_otb_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_palm_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pango_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pattern_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pcd_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pcl_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pcx_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pdb_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pdf_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pes_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pict_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pix_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_plasma_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_png_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pnm_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_preview_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_ps_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_ps2_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_ps3_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_psd_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_pwp_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_raw_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_rgb_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_rgf_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_rla_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_rle_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_scr_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_screenshot_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_sct_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_sfw_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_sgi_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_sixel_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_stegano_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_sun_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_svg_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_tga_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_thumbnail_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_tiff_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_tile_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_tim_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_ttf_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_txt_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_uil_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_url_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_uyvy_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_vicar_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_vid_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_viff_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_vips_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_wbmp_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_webp_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_wmf_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_wpg_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_xbm_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_xc_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_xcf_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_xpm_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_xps_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_xtrn_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_ycbcr_.dll"
LoadFile "C:/php_imagick/IM_MOD_RL_yuv_.dll"
LoadFile "C:/php_imagick/ImageMagickObject.dll"
# enable imagick end ===========
5,最后一次重启apache
答案 6 :(得分:0)
如何为PHP 5.6.8安装ImageMagick模块。 X64。 TS(Theard Safe)版本。
常规信息
第1步
1。文件名:ImageMagick-6.7.7-5-Q16-windows-x64-dll.exe
2。下载:https://ftp.icm.edu.pl/packages/ImageMagick/binaries/ImageMagick-6.7.7-5-Q16-windows-x64-dll.exe
3。(不要触摸任何东西,只需单击下一步...下一步。)
安装后,转到命令提示符(CMD.exe)并输入:convert --version
如果在输出中,您会看到像Version: ImageMagick 6.9.1 ....
(有效!)
4。完成
第2步
文件名:php_imagick-3.2.0b1-5.6-ts-vc11-x64.zip
提取存档
重要!从提取的存档中复制所有前缀为 CORE_RL(...)。DLL 的文件到您的Apache BIN 文件夹中,例如: C:\ Apache2.4 \ bin ,然后在提取的归档文件中找到 php_imagick.dll 文件并将其复制到PHP 扩展名文件夹,例如: C:\ php5.6.8 \ ext
打开您的 PHP.INI 文件,找到第;extension=php_imagick.dll
行,然后删除(;
)
保存
完成
如何检查它是否有效?
C:\php5.6.8\php.exe -m
phpinfo();
函数对其进行检查