После обновления PHP больше не поддерживает операции PNG
После обновления до Mac OS X 10.10 (Yosemite) и запуска Apache с поддержкой PHP все работает по-прежнему, за исключением любых операций с изображениями в файлах PNG. Я получаю Call to undefined function imagecreatefrompng()
, а любая операция с файлами JPEG работает. Итак, GD присутствует, но не для PNG.
В phpinfo()
есть одна строка, которая выглядит как проблема: '--with-png-dir = no'
![phpinfo()]()
Раздел GD из phpinfo()
:
![Enter image description here]()
Как заставить включенный PHP работать с файлами PNG?
Ответы
Ответ 1
Здесь другой вариант, от ребята от liip, здесь. Это пакет PHP, который поставляется заранее для Yosemite (более старые версии тоже работают), но это всего лишь одна строка кода:
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5
После этого все готово к работе, как ожидалось. Конфигурация, которая соответствует этой установке, хорошо подходит для разработки Symfony 2, но она должна работать нормально с другими вариантами использования.
Наконец, если вам нужно также использовать обновленный CLI для PHP, но вы не хотите использовать версию PHP, поставляемую с ОС, то вы также можете добавить к своей .bash_profile
или аналогичной этой строке кода
export PATH=/usr/local/php5/bin:$PATH
Ответ 2
Мне пришлось исправить это, снова установив PHP 5.5 через Homebrew. Довольно безболезненно:
https://github.com/Homebrew/homebrew-php
Инструкции по установке можно найти здесь: https://github.com/Homebrew/homebrew-php#usage
Я использовал команду brew install php55
Не забудьте обновить свой httpd.config - инструкции будут показаны в конце установки homebrew.
Ответ 3
Как сказал @jtotheh, установка полной версии PHP с поддержкой PNG и FreeType, скомпилированной в это путь.
Если вы не хотите заниматься этим процессом, я подготовил полные пошаговые инструкции как ответ на аналогичный вопрос: fooobar.com/info/110725/...