This section applies to Windows 98/Me and Windows NT/2000/XP/2003. PHP
will not work on 16 bit platforms such as Windows 3.1 and sometimes
we refer to the supported Windows platforms as Win32. Windows 95
is no longer supported as of PHP 4.3.0.
Once you have PHP installed on your Windows system, you may also
want to load various extensions
for added functionality.
There are several all-in-one installers over the Internet, but none of
those are endorsed by PHP.net, as we believe that using one of
the official windows packages from
is the best choice to have your system secure and optimized.
Windows Installer (PHP 5.2 and later)
The Windows PHP installer for later versions of PHP is built using MSI
technology using the Wix Toolkit (» http://wix.sourceforge.net/).
It will install and configure PHP and all the built-in and
PECL extensions, as well as configure many of the
popular web servers such as IIS, Apache, and Xitami.
First, install your selected HTTP (web) server on your
system, and make sure that it works. Then proceed with one of the following
Run the MSI installer and follow the instructions provided by the
installation wizard. You will be prompted to select the Web Server you
wish to configure first, along with any configuration details needed.
You will then be prompted to select which features and extensions you
wish to install and enable. By selecting "Will be installed on local
hard drive" in the drop-down menu for each item you can trigger whether
to install the feature or not. By selecting "Entire feature will be
installed on local hard drive", you will be able to install all
sub-features of the included feature ( for example by selecting this
options for the feature "PDO" you will install all PDO Drivers ).
It is not recommended to install all extensions by default, since many
other them require dependencies from outside PHP in order to function
properly. Instead, use the Installation Repair Mode that can be
triggered thru the 'Add/Remove Programs' control panel to
enable or disable extensions and features after installation.
The installer then sets up PHP to be used in Windows and the php.ini
file, and configures certain web servers to use PHP. The installer will
currently configure IIS, Apache, Xitami, and Sambar
Server; if you are using a different web server you'll need to
configure it manually.
The installer also supports a silent mode, which is helpful for Systems
Administrators to deploy PHP easily. To use silent mode:
msiexec.exe /i php-VERSION-win32-install.msi /q
You can control the install directory by passing it as a parameter to the
install. For example, to install to e:\php:
msiexec.exe /i php-VERSION-win32-install.msi /q INSTALLDIR=e:\php
You can also use the same syntax to specify the Apache Configuration
Directory (APACHEDIR), the Sambar Server directory (SAMBARDIR), and the
Xitami Server directory (XITAMIDIR).
You can also specify what features to install. For example, to install
the mysqli extension and the CGI executable:
msiexec.exe /i php-VERSION-win32-install.msi /q ADDLOCAL=cgi,ext_php_mysqli
The current list of Features to install is as follows:
MainExecutable - php.exe executable
ScriptExecutable - php-win.exe executable
ext_php_* - the various extensions ( for example: ext_php_mysql for MySQL )
apache13 - Apache 1.3 module
apache20 - Apache 2.0 module
apache22 - Apache 2,2 module
apacheCGI - Apache CGI executable
iis4ISAPI - IIS ISAPI module
iis4CGI - IIS CGI executable
NSAPI - Sun/iPlanet/Netscape server module
Xitami - Xitami CGI executable
Sambar - Sambar Server ISAPI module
CGI - php-cgi.exe executable
PEAR - PEAR installer
Manual - PHP Manual in CHM Format
For more information on installing MSI installers from the command line,
visit » http://msdn.microsoft.com/en-us/library/aa367988.aspx
Upgrading PHP with the Install
To upgrade, run the installer either graphically or from the command line
as normal. The installer will read your current install options, remove
your old installation, and reinstall PHP with the same options as before.
It is recommended that you use this method of keeping PHP updated instead
of manually replacing the files in the installation directory.