简体   繁体   中英

intl extension with given ICU version for Symfony 3 with PHP 7.1

I have installed Symfony 3.2.6. When i check /config.php in browser i get a message:

intl ICU version installed on your system is outdated (57.1) and does not match the ICU data bundled with Symfony (58.2) To get the latest internationalization data upgrade the ICU system package and the intl PHP extension.

First a tried to update ICU extensions like it was described here Update ICU extension within xampp? I downloaded suitable package from PECL http://site.icu-project.org/download/58 coppied to apache/bin folder, restarted apache, but PHP loads the old 57.1 ICU version.

Then I tried to update php_intl.dll ftom https://pecl.php.net/package/intl but i didn't find any suitable package for php 7.

Is there a proper wat to uprgrade ICU lib in php 7?

That's a really nasty problem. If there is no newer compatible PHP version and since updating the intl extensions did not do to the trick I guess you have to compile PHP with a custom ICU version:

The ICU versions can be checked out here: http://source.icu-project.org/repos/icu/icu/tags/

Check out
cd source
./configure --prefix=$(pwd)/../build (sets a custom install dir)
make (build)
make install (install to "build" dir)

Now that ICU is built, you need to run PHP's "configure" script and point it to the build dir:

./configure ... --enable-intl --with-icu-dir=/path/to/icu/build

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM