Symfony2 and XAMPP 1.7.4 Problems

This evening I’ve spent installing Symfony2 in the XAMPP 1.7.4 environment on Windows 7.
First, many thanks goes to Sebastian Widmann for his original post in German which already saved me a lot of time. Unfortunately the steps which were mentioned there are not sufficient (at least on my Win7 installation). My story follows…

After extracting Symfony2 in your web root directory and running the initial app/check.php you are facing the following 3 issues:

  1. Missing internationalization  (intl extension)
  2. Missing cache (APC extension)
  3. Enabled short tags

Issue 1: php_intl.dll

This is the easiest one. Simply copy all of your  xampp/php/icu*36.dll into xampp/apache/bin and add the following line to your xampp/php/php.ini:

extension=php_intl.dll

Issue 2: php_apc.dll

This is  a bit more tricky. As XAMPP 1.7.4 is based on PHP 5.3  make sure that you download the correct DLL for this version (php_apc-3.1.5-5.3-vc6-x86.zip) from here. Extract dll to your xampp/php/ext folder and add the next line to your xampp/php/php.ini:

extension=php_apc.dll

If you download the wrong apc version you will quickly realize it by testing the basic xampp applications. E.g. the login to your PhpMyAdmin  installation will not work.

Issue 3: short_open_tag

And last but not least… For whatever reason the new xampp is delivered with the following settings in php.ini:

; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
short_open_tag = Off
; XAMPP for Linux is currently old fashioned
short_open_tag = On

Change the last On into Off and your Symfony installation will work.

A nice side effect of the last change: prepared that your xampp web control (localhost/xampp) will not work with this setting. Reason: XAMPP developers have managed to deliver the native xampp coding with the short tags. It seems to be a bug, however it is not clear when it will be fixed (may be in 1.7.5?). Have a nice time going through all xampp/htdocs/xampp/ scripts and fixing all <? and <?= combinations! :)

Enjoy your life.