Homebrew недавно внес некоторые изменения, касающиеся PHP и его расширений.Прежде чем вам нужно было нажать homebrew/php
и установить определенную версию PHP с brew install php71
и модуль с brew install php71-mcrypt
.Теперь вам нужно использовать php@7.1 и создавать расширения самостоятельно, используя PECL.
Поскольку у вас так много разных версий PHP, я предлагаю избавиться от них всех.Следующие шаги удаляют все старые версии PHP из вашей системы:
# Will show you any php packages you've got. make not of that!
brew list | grep php
# Will uninstall any php packages you may have
brew list | grep php | while read x; do brew uninstall --force $x; done
# You may need to run this too
rm -rf /usr/local/Cellar/php
# Clean up Launch Agents
rm ~/Library/LaunchAgents/homebrew.mxcl.php*
sudo rm /Library/LaunchDaemons/homebrew.mxcl.php*
brew untap homebrew/php
brew cleanup
brew update
brew doctor # just to make sure you're all clean
ps ax | grep php
# if some PHP daemons are still runing, reboot.
После перезагрузки вы можете установить PHP новым способом:
brew install php // This installs the latest version. If you need PHP7.1 use brew install php@7.1
Проверьте, сработало ли это:
php --version
Следующие важные пути:
- / usr / local / opt / php / lib / httpd / modules / libphp7.so - ваш модуль apache.
- / usr / local / bin / php - ваша командная строка PHP.
- / usr / local / sbin / php-fpm - ваш двоичный файл PHP-FPM.
Чтобы установить расширения,вы должны использовать pecl:
pecl install mcrypt // Install all other extensions this way
Расширение будет установлено на /usr/local/lib/php/pecl/20170718/
.
Если вы используете Apache, вам нужно загрузить модуль Apache.Отредактируйте /usr/local/etc/httpd/httpd.conf
и найдите раздел, в который загружены все модули.Добавьте эту строку в конце раздела:
LoadModule php7_module /usr/local/opt/php@7.2/lib/httpd/modules/libphp7.so
Перезапустите сервер Apache и проверьте, используется ли правильная версия PHP.