Question

I'm receiving this PHP error while trying to use the Normalizer class, specifically the Normalizer::normalize function:

Fatal error: Class 'Normalizer' not found.

I'm currently using PHP 5.3.8 so, according to the PHP documentation, it should be activated by default. The only thing I can think about is a problem with the PECL intl extension.

I checked in the php/ext/ folder and the php_intl.dll is there. I checked the php.ini file, and there was no extension=php_intl.dll command, so I added it. But still no luck. Beyond that I have no idea. Can anybody please tell me what the hell is going on here?

Thanks

Additional info: When I run phpinfo, there is no mention about the PECL intl extension, so I'm guessing it's wasn't properly installed.

What solved my problem:

http://www.tiv.net/2010/12/php-intl-extension-windows-apache.html, uninstalling XAMPP 1.77 (which has some kind of internal bug with the PECL intl extension) and installing XAMPP 1.73.

Was it helpful?

Solution

Quote from http://pecl.php.net/package/intl:

The Internationalization extension exposes functionality of the ICU library to PHP.

All the binaries depend on the ICU libraries (version 4.8), which must be available to PHP.

just download and extract the content of the zip with ICU libraries in the folder where php.exe is and it will work

ps: the php_intl.dll can be downloaded from the same location (in the description where is says "Windows binaries" :)

OTHER TIPS

Left-click on the WAMP tray icon, go to PHP, go to PHP extensions and check php_intl. Than restart the server.

Because WAMP(server) uses another settings file everything looks fine while it doesn't.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top