Обновление до PHP 7.3.8 на macOS Mojave (OSX 10.14.6). Настройка версии PHP в терминале и встроенном Apache

В этой статье обновим версию PHP встроенного в macOS сервера Apache, а также настроим работу PHP версии 7.3.8 для работы из терминала. По умолчанию, в macOS стоит PHP 7.1.23. Последнюю версию PHP можно установить с помощью установки пакетов с PHP Packaged site.

Установка PHP 7.3

Откройте терминал и выполните команду:

Система безопасности macOS может потребовать ввод пароля для получения доступа к системным файлам — вводите его. Скрипты компании Liip для установки PHP не содержат в себе вредоносного кода.

В случае, если у вас уже установлена новая версия, то эта команда может вызвать вывод предупреждения об уже установленной свежей версии PHP.

В результате скрипта будет развёрнут архив с файлами PHP 7.3 в директории пользователя, в моём случае, это было здесь:

Окончание установки выглядело таким образом (обратите внимание на путь к распаковываемым файлам):

Настройка работы PHP 7.3 из терминала

Чтобы проверить текущую версию, запускаемую в терминале, выполните команду

Для работы composer в терминал у меня была поставлена версия PHP 7.2.16. Чтобы настроить запуск из терминала новой версии PHP нужно в файле ~/.bash_profile, если вы используете окружение терминала bash, добавить в конец файла следующие строки:

Путь к установленной версии PHP может отличаться от указанного мною. Актуальный для вас путь содержится в терминале, где происходила установка новой версии и запуск команды curl. После сохранения изменений в файле .bash_profile, внутри новых сессий терминала будет использоваться указанная вами версия. Для обновления версии внутри текущей сессии терминала, следует прочесть файл заново с помощью вызова:

Теперь при вызове php -v в терминале вы должны увидеть последнюю версию PHP:

Если нет файла ~/.bash_profile

В случае, если файл ~/.bash_profile не создан, то это можно сделать прямо из терминала с помощью команды:

А затем взять в редактирование с помощью выполнения вызова:

Если у вас не настроен запуск редактора sublime text из консоли, то это вы можете сделать с помощью этой статьи.

Настройка PHP 7.3 во встроенном в macOS сервере Apache

В операционную систему macOS изначально установлен веб сервер Apache, который позволяет разрабатывать сайты и полностью себя конфигурировать без установки LAMP, Apache через brew и т.п. Чтобы встроенный сервер Apache загружал нужную версию модуля PHP следует ему указать это в конфигурационном файле. Файл конфигурации находится по адресу:

В этом файле следует найти строку, содержащую слово php. По умолчанию, она выглядит следующим образом:

Следует убрать у неё в начале #, чтобы эта строка не была закомментирована, а также прописать вместо libexec/apache2/libphp7.so полный путь до файла libphp7.so в директории с новой версией PHP 7.3. В моём случае, строка выглядит следующим образом:

Сохраняем файл, вводим пароль, подтверждающий наши права на сохранение файла в системном месте. А затем нужно перезапустить сервер Apache c помощью команды:

Теперь, при заходе на страницу с phpinfo(); увидим обновленную версию: