Fatal error: Class 'Locale' not found with ZF2 skeleton application

Max picture Max · Jul 16, 2012 · Viewed 22.2k times · Source

I've just installed the ZF2 beta5 application as per given instructions:

$ git clone git://github.com/zendframework/ZendSkeletonApplication.git ./
Cloning into '.'...
remote: Counting objects: 1494, done.
remote: Compressing objects: 100% (660/660), done.
remote: Total 1494 (delta 681), reused 1373 (delta 581)
Receiving objects: 100% (1494/1494), 397.42 KiB | 357 KiB/s, done.
Resolving deltas: 100% (681/681), done.

$ php composer.phar install
Installing dependencies
  - Installing zendframework/zendframework (dev-master)
    Cloning d6b0afe61149c6d0669743aab5c73285c42cd0db

zendframework/zendframework suggests installing doctrine/common (Doctrine\Common >=2.1 for annotation features)
Writing lock file
Generating autoload files

When I access the application, I get the below error:

Fatal error: Class 'Locale' not found in ./vendor/zendframework/zendframework/library/Zend/I18n/Translator/Translator.php on line 220

I haven't tried installing Doctrine as suggested (because I don't want to use Doctrine in the end).

Does someone know how to fix this issue?

Answer

Rob Allen picture Rob Allen · Jul 17, 2012

You need to have installed the intl PHP extension.

For APT based systems, try: sudo apt-get install php5-intl
For YUM based systems, try: sudo yum install php-intl
For OS X, start with this article, but check the version of PHP you have and download the correct source.

You'll probably need to restart PHP or your web server afterwards.