it-swarm.com.ru

Установка ImageMagick Brew с PHP Модуль в Mac OS X

Я установил ImageMagick с помощью brew install imagemagick. Все это работало нормально, и я могу запустить любую команду ImageMagick из терминала/командной строки.

Теперь, когда я пытаюсь использовать классы ImageMagick в PHP, я получаю ошибку Class 'Imagick' not found in .... Я думаю, это потому, что модуль ImageMagick не загружен.

Может ли кто-нибудь помочь мне заставить эту штуку работать на PHP? Спасибо!

Дополнительная информация:
Mac OS X Версия: 10.8: Mountain Lion
PHP Версия: 5.3.13

24
Wouter Konecny

Вашей установки ImageMagick недостаточно. Вам также понадобится пакет Imagick (возможно, называется php72-imagick или аналогичный для домашнего приготовления).

Imagick не выполняет саму работу, это собственное расширение PHP для создания и изменения изображений с помощью API ImageMagick .

Попробуйте найти точное название пакета с помощью brew search imagick.

29
Kurt Pfeifle

Я просто сделал это после долгих экспериментов. На данный момент это, кажется, способ сделать это для PHP 5.3:

brew tap josegonzalez/php
brew tap homebrew/dupes
brew install php53-imagick

Понятия не имею, кто такой Хосе Гонсалес, но, видимо, мы в его долгу ....

44
Daniel Feder

Я использую Йосемити. Для меня решение - это сочетание ответа и комментария, уже перечисленных здесь.

brew install imagemagick
brew install php55-imagick

Отредактируйте /etc/php.ini, чтобы включить imagick

extension=/usr/local/Cellar/php55-imagick/{version of php55-imagick}/imagick.so

Пример:

extension = /usr/local/Cellar/php55-imagick/3.1.2_1/imagick.so
18
Mr. 14

Я была такая же проблема. Это шаги, которые работали для меня, если вы используете PHP 5.6

  1. brew install php56-imagick
  2. brew install imagemagick
  3. find /usr/local/Cellar -name "imagick.so" 
    Скопируйте путь из вывода этой команды в ваш файл php.ini.
    например. extension=/usr/local/Cellar/php56-imagick/3.3.0_2/imagick.sosave ваш файл. Теперь дважды проверьте, существует ли класс imagemagick типа
  4. php -r "print(class_exists('imagick'));"

Символьные ссылки Brew у меня не работали, поэтому мне пришлось ввести полный путь в файл php.ini, чтобы он заработал . Надеюсь, это поможет

16
Frank Hag

php72-imagick устарел, так как imagick является частью самого двоичного файла php. Используйте pecl для установки imagick, например:

brew install php
brew install imagemagick
pecl install imagick
5
anytimecoder

Пытаться:

brew install homebrew/php/php53-imagick
4
diazwatson

Хорошо, через 1 час, я понял это. Mac не дает разрешениям pecl-скрипта создавать каталог PHP. Для разрешения сделайте следующее.

brew install imagemagick
Sudo pecl install imagick .  
php --ini | grep "Loaded Configuration File"
Add extension=imagick.so under extensions.

Установка будет завершена. Затем для пробного запуска:

php -r "print(class_exists('imagick'));"
1
Jamie Ross

этот работал для меня: 

brew install imagemagick       # If it's not already installed
mkdir /usr/local/lib/php/pecl  # On my system this dir didn't exist and this caused pecl install to fail
pecl install imagick

Вот

1
Ramyar

У меня была такая же ошибка, я уже установил imagemagick и php71-imagick.

brew upgrade imagemagick - помог мне.

Вам может понадобиться Sudo:

Sudo brew upgrade imagemagick

Вам может потребоваться перезапустить Apache/php-fpm/<other webserver>.

0
Henry

From: php error: класс 'Imagick' не найден

Вы добавили extension=imagick.so в свой файл php.ini (или /etc/php.d/imagick.ini)?

0
Jill-Jênn Vie