【问题标题】:Class imagick not found when ran from CLI从 CLI 运行时找不到类 imagick
【发布时间】:2012-05-16 18:35:57
【问题描述】:
$im = new imagick($file);

这行代码从我的浏览器运行时可以正常工作,但是当我尝试从命令行 (CLI) 运行它时,我收到以下错误...

找不到类“imagick”

任何想法为什么它不能在 CLI 中工作?

【问题讨论】:

    标签: php imagemagick kohana command-line-interface imagick


    【解决方案1】:

    找到解决办法:

    sudo aptitude install make php5-dev php-pear
    sudo aptitude remove php5-imagick
    sudo aptitude install libmagick9-dev
    sudo pecl install imagick
    sudo /etc/init.d/apache2 restart
    

    http://kvz.io/blog/2008/02/27/class-imagick-not-found/

    【讨论】:

      【解决方案2】:

      php cli 可执行文件与通常通过网络服务器运行的文件是分开的(如单独的二进制文件)。因此,它们可以是完全不同的 php 版本,具有不同的 php.ini 文件和编译/启用的不同扩展。

      【讨论】:

      • 我确实尝试在我正在运行的版本下在 MAMP 中显式运行 php 可执行文件,但仍然遇到相同的错误。不过,我可能做错了什么。我再看看。
      【解决方案3】:

      运行“php -i | grep include_path”并确保类文件路径在其中。如果没有,您可以将其添加到您的脚本或环境中(bash 配置文件)。

      【讨论】:

      • 当我运行它时,它给出了 MAMP 的 php 目录。我不确定类路径在哪里。我使用 PECL 安装了 imagick。我关注了this guide
      • 运行以下命令“which php”以查看您正在运行的 PHP 实例。如果它返回“/usr/bin/php”,则很可能您正在运行不同的 php 安装。
      • php 说的... /Applications/MAMP/bin/php/php5.2.17/bin/php
      • 您可以在脚本中使用以下内容并指向您的 imagick 文件位置。 <?php $path = '/usr/lib/pear'; set_include_path(get_include_path() . PATH_SEPARATOR . $path); ?>
      • 那条路径不起作用。我在我的 Mac 上检查了那个路径,并且那个“pear”目录不存在。
      猜你喜欢
      • 2018-02-17
      • 2016-10-16
      • 1970-01-01
      • 1970-01-01
      • 2015-06-23
      • 2011-04-16
      • 1970-01-01
      • 2016-05-24
      • 2014-05-26
      相关资源
      最近更新 更多