Imagick没有';我不能用php工作

Imagick没有';我不能用php工作,php,xampp,imagick,Php,Xampp,Imagick,我有个问题。我已安装Image Imagick软件,此文件: ImageMagick-6.8.4-6-Q16-x86-dll.exe 我的php代码如下所示: <?php $gume = 'svg/EC_tyre_label.svg'; $im = new Imagick(); $svg = file_get_contents($gume); $im->readImageBlob($svg); /*png settings*/ $im

我有个问题。我已安装Image Imagick软件,此文件:

ImageMagick-6.8.4-6-Q16-x86-dll.exe

我的php代码如下所示:

<?php
    $gume = 'svg/EC_tyre_label.svg';
    $im = new Imagick();
    $svg = file_get_contents($gume);

    $im->readImageBlob($svg);
    /*png settings*/
    $im->setImageFormat("png24");
    $im->writeImage('svg/EC_tyre_label.png');
    $im->clear();
    $im->destroy();


?>
<body>
<img src="svg/EC_tyre_label.png" />
</body>

我的php版本是5.3.8,我使用的是xampp版本1.7.7。 当我在浏览器中打开它时,出现以下错误:

致命错误:在中找不到类“Imagick” 第9行的C:\xampp\htdocs\SVG\u antonio\index.php


有人知道如何解决这个问题吗??欢呼。< /P> < P>下载VisualC++ 9的VisualMaGeX,使用Visual C++ + -----你需要TS(线程安全版本)。以下是另一个可能为您提供正确二进制文件的站点:

调用phpinfo()时,“Imagick”是否列为扩展名?! 在尝试创建任何imagick实例之前,首先需要确保这一点

如果它被列为扩展名,请确保您不在某个名称空间内,这就是找不到普通“imagick”的原因

尝试(注意反斜杠!):

编辑: 如果未列出,请尝试非线程安全版本,并始终确保php.ini中的扩展路径设置正确。您可能需要绝对路径值,并使用“/”而不是“\”,或者反过来使用扩展dll路径


由于名声不好,我无法发布屏幕截图,但是让谷歌搜索带有“phpinfo imagick”的图像,如果imagick加载成功,你会找到phpinfo部分的屏幕截图。

你在配置中启用了ImageMagick并重新启动Xampp(Apache)了吗?@danielrsmith我已经遵循了这些步骤,但现在我无法启动xampp apache,我收到以下错误:PHP启动:imagick:无法初始化使用bulid ID=API20090626,TS,VC6编译的模块使用bulid ID=API20090626,TS,VC9这些选项需要匹配我已经尝试了3,4次该解决方案,但仍然得到相同的错误。该url已关闭。是否存在镜像?我已经使用phpinfo()进行了测试,它在路径C:\ImageMagick-6.8.4-Q16下的Apache环境部分中说…我像您所说的那样设置了反斜杠…仍然存在相同的错误…它说。。什么!?它需要被列为一个扩展,如图所示(我更新了我的答案,请看那里)。我不明白你我需要把“\”或“/”放在哪里,如果是在我的“php”代码中的话,我已经尝试过了,没有帮助…我已经用非线程安全版本尝试过了,仍然是相同的错误…你需要向我们说明,是否将imagick成功加载为扩展名。请告诉我们,当您调用phpinfo()时,是否有称为“imagick”的“大”部分。你没有回答那个问题。让谷歌搜索带有“phpinfo imagick”的图像,如果imagick加载成功,你会找到phpinfo部分的屏幕截图。如果不知道,就没有机会提供帮助,因为我们不知道从何处开始(php环境或您的普通代码出错)。抱歉,我忘了写这篇文章,在phpinfo()中,imagick没有加载,再次抱歉。
$im = new \Imagick();