【问题标题】:Use Imagick and GD in Yii在 Yii 中使用 Imagick 和 GD
【发布时间】:2015-06-24 09:34:33
【问题描述】:

我使用的是 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): failed to open stream: No such file or directory。 我理解这意味着 Yii 无法识别组件文件夹中的类和文件 Imagick?????

对我的问题有什么想法吗? 请教我如何在 Yii 中使用 Imagick 和 GD wright 方式。

P.s:我查到http://www.yiiframework.com/extension/image/,但是,如果我用那种方式,我会重写我的类,它只是用于Yii,我想将我的类用于一些项目。

更新:对不起,我的愚蠢,我在家里的 Mac 和服务器上仍然可以正常工作,但在办公室计算机上,我没有正确配置这些扩展。

【问题讨论】:

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

标签: yii gd imagick


【解决方案1】:

你没有安装 php5-imagick 包。你可以在php.net阅读它

安装后您的代码将完美运行。

在 Ubuntu 上:

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

【讨论】:

    【解决方案2】:

    您必须在 main.php “配置文件”中添加 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'),
        ),
    

    使用流动的扩展 image extension

    【讨论】:

      猜你喜欢
      • 2011-05-03
      • 2013-04-06
      • 2020-12-11
      • 2015-10-27
      • 2014-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多