在Yii中使用Imagick和GD

在Yii中使用Imagick和GD,yii,gd,imagick,Yii,Gd,Imagick,我正在使用Yii 1.1.6 我编写了一个使用GD和Imagick PHP扩展的类。在我的示例中,我声明了一个变量 class Myclass(){ public function __construct() { $imagick = new Imagick(); } // something more } 我把我的类放入组件文件夹 在控制器中,像往常一样 $image = new MyClass(); 但是yii通知我错误500:inclu

我正在使用Yii 1.1.6 我编写了一个使用GD和Imagick PHP扩展的类。在我的示例中,我声明了一个变量

class Myclass(){
    public function __construct()
    {
         $imagick = new Imagick();
    }
    // something more
}
我把我的类放入组件文件夹

在控制器中,像往常一样

$image = new MyClass();
但是yii通知我错误500:include(Imagick.php):无法打开流:没有这样的文件或目录。 我理解这意味着Yii无法识别组件文件夹中的类和文件Imagick

对我的问题有什么想法吗? 请告诉我如何在Yii中使用Imagick和GD-wright

我发现了,但是,如果我用那种方式,我会重写我的类,它只用于Yii,我想用我的类来做一些项目


更新:很抱歉我的愚蠢,我在家里的Mac电脑和服务器上仍然可以正常工作,但在办公室电脑上,我没有正确配置这些扩展。

您没有安装php5 imagick软件包。你可以在

安装后,您的代码将完美地工作

在Ubuntu上:

sudo apt-get install php5-imagick
sudo service apache2 reload

您没有安装php5 imagick软件包。你可以在

安装后,您的代码将完美地工作

在Ubuntu上:

sudo apt-get install php5-imagick
sudo service apache2 reload

必须在main.php“config file”中添加ImageMagick安装路径

这是windows的示例

'image'=>array(
        'class'=>'application.extensions.image.CImageComponent',
        // GD or ImageMagick
        'driver'=>'GD',
        // ImageMagick setup path
        'params'=>array('directory'=>'D:/Program Files/ImageMagick-6.4.8-Q16'),
    ),
对于linux

'image'=>array(
        'class'=>'application.extensions.image.CImageComponent',
        // GD or ImageMagick
        'driver'=>'GD',
        // ImageMagick setup path
        'params' => array('directory' => '/usr/bin'),
    ),
使用流动延伸

必须在main.php“config file”中添加ImageMagick设置路径

这是windows的示例

'image'=>array(
        'class'=>'application.extensions.image.CImageComponent',
        // GD or ImageMagick
        'driver'=>'GD',
        // ImageMagick setup path
        'params'=>array('directory'=>'D:/Program Files/ImageMagick-6.4.8-Q16'),
    ),
对于linux

'image'=>array(
        'class'=>'application.extensions.image.CImageComponent',
        // GD or ImageMagick
        'driver'=>'GD',
        // ImageMagick setup path
        'params' => array('directory' => '/usr/bin'),
    ),
使用流动延伸

显然,您没有在PHP中加载Imagick扩展。您可能应该安装它并确保它已加载。@Danack谢谢,我确实配置了我的xampp,它再次正常工作。显然您没有在PHP中加载Imagick扩展。您可能应该安装它并确保它已加载。@Danack谢谢,我确实配置了我的xampp,它再次运行良好。