I wanted to install PHP Composer in Windows. And to begin, I already have a copy of XAMPP 1.8.1, I think if you have a different way to get your PHP that should not matter. I tested this to work for Windows 7 but it should work for all versions of Windows.
0. Download and install XAMPP
You can download XAMPP here. I got the 7zip version rather than the installer itself. The ZIP version is similar, just with a larger file size. I extract the xampp folder into my C: drive, i.e. to C:xampp. Then install it by opening the file C:xamppsetup_xampp.bat. That will set the paths in XAMPP’s configurations.
1. Setting up environment variables
Firstly, we would need to let the command prompt know where to find php.exe. In my computer set up, it is located in ‘C:xamppphp’. Yours might be in ‘C:xampp-litephp’ depending on where you install your XAMPP.
We need to edit some system environment variables:
Click on ‘Edit the system environment variables’, a dialog box will pop up. Click on ‘Environment Variables…’, you should be greeted with the following dialog box:
My path looks like this before I add anything under the system variable’s Path section, yours will be different:
[code language=”bash”]C:Program FilesCommon FilesMicrosoft SharedWindows Live;C:Program Files (x86)Common FilesMicrosoft SharedWindows Live;C:Program Files (x86)NVIDIA CorporationPhysXCommon;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;C:Program Files (x86)Windows LiveShared;C:Program Files (x86)SproutCorebin;N:vagrantvagrantbin;C:Program Files (x86)QuickTimeQTSystem[/code]
Append your XAMPP PHP directory at the back of what is already there:
Open a new command prompt (don’t use existing one), and type “php -v” and see if there are any problems. You should see the following:
[code language=”bash”]C:UsersKahWee>php -v
PHP 5.4.7 (cli) (built: Sep 12 2012 23:48:31)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies[/code]
2. Avoiding MSVCR71.dll error
I encountered an error: “php.exe – System Error: The program can’t start because MSVCR71.dll is missing from your computer. Try reinstalling the program to fix this problem.”.
Open the file ‘php.ini’ in ‘C:xamppphp’ and search for “pgsql”. Disable the extension by placing a semicolon in the beginning of the line this way:
3. Enable the openssl extension
Go to C:xamppphpphp.ini and search for “extension=php_openssl.dll”:
Make sure it is uncommented to:
4. Command Prompt action
Now we will navigate to the folder through the command prompt. Use:
[code language=”bash”]cd /D C:xamppphp[/code]
The above command changes the directory to C:xamppphp where I will install my composer file. Conveniently, it is also within the path of system variables so I can run composer.phar anywhere. The /D allows you to change to a different drive. If that’s not needed, you can run simply “cd C:xamppphp”.
Then you can run the following code:
[code language=”bash”]php -r "eval(‘?>’.file_get_contents(‘https://getcomposer.org/installer’));"[/code]
You should see this response after waiting for less than a minute:
[code language=”bash”]C:xamppphp>php -r "eval(‘?>’.file_get_contents(‘https://getcomposer.org/installer’));"
All settings correct for using Composer
Composer successfully installed to: C:xamppphpcomposer.phar
Use it: php composer.phar[/code]
Now you can create a composer.bat file, C:xamppphpcomposer.bat and include the following code:
[code language=”bash”]@ECHO OFF
php %SUBDIR%composer.phar %*[/code]
This allows you to run the command “composer” anywhere.
5. And you’re done
Okay you work on composer, just use: