Если вы PHP-разработчик, работающий в системе Ubuntu, вы можете столкнуться с неприятным сообщением об ошибке «Запрошенное расширение PHP ext-intl * отсутствует в вашей системе Ubuntu». Эта ошибка обычно возникает, когда расширение ext-intl, необходимое для выполнения задач интернационализации и локализации, не установлено или не настроено должным образом. В этой записи блога мы рассмотрим несколько способов решения этой проблемы и обеспечения бесперебойной работы ваших PHP-приложений.
Метод 1: установка ext-intl с помощью apt-get:
Самый простой способ устранить эту ошибку — использовать менеджер пакетов apt-get для установки расширения ext-intl. Откройте терминал и выполните следующую команду:
sudo apt-get install php-intl
Эта команда установит необходимые зависимости и включит расширение ext-intl в вашей конфигурации PHP.
Метод 2: включение ext-intl в php.ini:
В некоторых случаях, даже если ext-intl установлен, он может быть не включен в файле конфигурации php.ini. Чтобы включить его, откройте файл php.ini в текстовом редакторе:
sudo nano /etc/php/{version}/cli/php.ini
Замените {version}на свою версию PHP (например, 7.4, 8.0). Найдите строку, которая начинается с ;extension=intl, и удалите точку с запятой в начале, чтобы раскомментировать ее. Сохраните файл и перезапустите веб-сервер:
sudo service apache2 restart
Метод 3: Компиляция ext-intl из исходного кода:
Если предыдущие методы не помогли, вы можете попробовать скомпилировать ext-intl из исходного кода. Вот шаги:
-
Загрузите исходный код PHP, соответствующий вашей версии PHP, с официального сайта PHP.
-
Извлеките загруженный архив и перейдите в каталог ext/intl.
-
Скомпилируйте расширение, выполнив следующие команды:
phpize
./configure
make
sudo make install
- После завершения процесса компиляции добавьте расширение в файл php.ini, добавив следующую строку:
extension=intl.so
- Сохраните файл php.ini, перезапустите веб-сервер, и теперь расширение ext-intl должно быть включено.
Метод 4. Использование менеджера версий PHP:
Если вы используете менеджер версий PHP, например phpenv или php-build, вы можете установить ext-intl для конкретной версии PHP, выполнив следующую команду:
phpenv install-ext intl
Эта команда загрузит, скомпилирует и установит расширение ext-intl для выбранной версии PHP.
Обнаружение ошибки «Запрошенное расширение PHP ext-intl * отсутствует» в Ubuntu может расстроить, но, к счастью, существует несколько способов ее устранения. Независимо от того, решите ли вы установить через apt-get, включить его в php.ini, скомпилировать из исходного кода или использовать менеджер версий PHP, эти решения помогут вам вернуть ваши PHP-приложения в нужное русло. Не забудьте выбрать метод, который соответствует вашим потребностям и конфигурации системы. Приятного кодирования!