Class Normalizer not found (in PHP 5.3.8)
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.
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" :)
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.