суббота, 12 марта 2016 г.

Проблема с translate data yii2

Вообщем понадобилось завести сайт на yii2 и для отображения комфортной записи, когда были обновлены данные, однако вместо этого отображалось что-то вроде:
{delta, plural, =1{день} one{день} few{дня} many{дней} other{дня}}

На сервере используется панель управления CentOS Web Panel и установка производилась для одной из версий php.

Пришлось долго повозиться, но рецепт был найден:

Удаляем пакет с древней версией:
# yum remove libicu

Компилим новую версию ICU:
# yum install gcc gcc-c++ php-devel php-pear
# cd /tmp
# wget http://download.icu-project.org/files/icu4c/54.1/icu4c-54_1-src.tgz
# tar -xvf icu4c-54_1-src.tgz
# cd icu/source/
# ./configure --prefix=/opt/icu4c-54_1 && make && make install

После чего, необходимо пересобрать PHP с опцией:
 --with-icu-dir=/opt/icu4c-54_1


Ставим модуль intl для PHP 5.4:
# pecl download intl
# tar xvfz intl-3.0.0.tgz
# cd intl-3.0.0
# /opt/alt/php54/usr/bin/phpize
# ./configure --with-php-config=/opt/alt/php54/usr/bin/php-config
# make
# make install
# vim /opt/alt/php54/usr/php/php.d/intl.ini
extension=intl.so

# /etc/init.d/httpd restart

Полезные ссылки:
http://nitinsharma.info/linux/libicui18n-so-42-cannot-open-shared-object-file-while-enabling-multiple-php-versions-in-parallels-plesk-for-linux/
http://yiiframework.ru/forum/viewtopic.php?t=22716#p135719

Комментариев нет:

Отправить комментарий