Вручную установите расширение intl для php7.4 в Centos7

PHP intl — это расширение для интернационализации и оболочка для библиотеки ICU. Поэтому перед установкой расширения PHP intl необходимо установить библиотеку ICU. В этой статье показано, как вручную установить расширение PHP intl.

PHP Это расширение интернационализации, являющееся оболочкой библиотеки ICU. Поэтому перед установкой расширения PHP intl необходимо установить библиотеку ICU.
Что такое отделение интенсивной терапии?
ICU — это продуманный, широко используемый набор библиотек C/C++ и Java, обеспечивающий поддержку Unicode и глобализации для приложений. ICU широко переносим, обеспечивая одинаковые результаты для приложений на всех платформах и между программным обеспечением C/C++ и Java.
ICU распространяется по неограничивающей лицензии с открытым исходным кодом, подходящей как для коммерческого программного обеспечения, так и для другого программного обеспечения с открытым исходным кодом или бесплатного программного обеспечения.

Вот некоторые основные моменты услуг, предоставляемых отделением интенсивной терапии:

Преобразование кодовых страниц: преобразуйте текстовые данные между Unicode и практически любым другим набором символов или кодировкой. Таблицы преобразования ICU основаны на данных о наборах символов, собранных IBM за десятилетия, и являются самыми полными из доступных.

Параметры сортировки: сравнивайте строки в соответствии с правилами и стандартами конкретного языка, региона или страны. Параметры сортировки ICU основаны на алгоритме сортировки Unicode и правилах сравнения, зависящих от локали, из Common Locale Data Repository — всеобъемлющего источника таких данных.

Форматирование: форматирует числа, даты, время и денежные суммы в соответствии с выбранным региональным стандартом. Это включает в себя перевод названий месяцев и дней на выбранный язык, выбор соответствующих сокращений, корректный порядок полей и т. д. Эти данные также берутся из общего хранилища данных региональных стандартов.

Расчёт времени: помимо традиционного григорианского календаря, он также предоставляет несколько типов календарей. Также предоставляется полный набор API для расчёта часовых поясов.

Поддержка Unicode: ICU внимательно следит за стандартом Unicode, обеспечивая легкий доступ ко всем многочисленным свойствам символов Unicode, нормализации Unicode, преобразованию регистра и другим основным операциям, указанным в стандарте Unicode.

Регулярные выражения: регулярные выражения ICU полностью поддерживают Unicode, обеспечивая при этом весьма конкурентоспособную производительность.

Bidi: поддерживает обработку смешанного текста, содержащего данные, написанные слева направо (английский язык) и справа налево (арабский язык или иврит).

Границы текста: определите положение слова, предложения, абзаца в текстовом диапазоне или места, где необходимо разрывать строки при отображении текста.
И многое другое. Подробности см. в руководстве пользователя отделения интенсивной терапии.

Сначала загрузите пакет программного обеспечения ICU. Последнюю версию можно найти на официальном сайте ICU. Адрес сайта:http://site.icu-project.org/
Версии ICU можно скачать с GitHub. Загрузите последнюю версию ICU, соответствующую версии вашей системы. Последняя версия — 66.1, которая в основном обновляет Unicode 13 и CLDR 36.1. Новая версия Q1 предназначена для интеграции Unicode 13 с низким уровнем риска.

wget https://github.com/unicode-org/icu/releases/download/release-66-1/icu4c-66_1-src.tgz

Распакуйте пакет программного обеспечения

tar -zxf icu4c-66_1-src.tgz

Установите ICU на сервер и укажите каталог установки /usr/local/icu.

cd icu/source ./configure --prefix=/usr/local/icu make && make install

Проверьте версию недавно установленного блока интенсивной терапии

ням инфо icu

Я обнаружил, что это 50.2. Я проверил на официальном сайте и обнаружил CLDR 22.1, Unicode 6.2, поддержку порядковых номеров и итераторы прерываний на основе словаря для китайского и японского языков.
На этом этапе библиотека ICU установлена. Загрузите и перейдите к следующему шагу — установке расширения intl в составе установочного пакета PHP7.
Сначала установите зависимые программные пакеты. Если вы ранее не настраивали среду, их необходимо установить заново. Ранее настроенные пакеты также необходимо установить и протестировать, чтобы не пропустить их!

yum -y install make gcc-c++ gd libxml2-devel libjpeg-devel libpng-devel net-snmp-devel curl-devel libxslt-devel pcre-devel libjpeg libpng libxml2 libcurl4-openssl-dev libcurl-devel libcurl libmysqlclient freetype-config freetype freetype-devel unixODBC libxslt


После установки пакетов зависимостей приступайте к установке расширений из установочного пакета PHP7.
Если на сервере нет установочного пакета PHP7, вам необходимо загрузить его заново.

wget https://www.php.net/distributions/php-7.4.3.tar.gz

Войдите в каталог хранения расширений в каталоге установки PHP7, скомпилируйте и настройте расширение intl.

cd php-7.4.3/ext/intl phpize ./configure make && make install


Расширение intl успешно установлено!

cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20190902/

Проверьте каталог с помощью команды ls. Файл Intl.so был сгенерирован. Вставьте следующий код в файл php.ini PHP7 и перезапустите службу PHP.

расширение=/usr/local/php/lib/php/extensions/no-debug-non-zts-20190902/intl.so

Используйте VI для редактирования php.ini. Найдите пустую строку и нажмите I, чтобы перейти в режим редактирования. После вставки указанного выше содержимого нажмите ESC, чтобы выйти из режима редактирования. Введите команду :wq, чтобы сохранить файл и выйти из режима редактирования VI.

vim /usr/local/php/etc/php.ini

После перезагрузки системы запустите PHP и проверьте, есть ли расширение intl на странице проверки PHP.

Поздравляем, вы успешно установили расширение intl!

1/5 - (1 голос)

Ответить

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