PHP, short for "PHP: Hypertext Preprocessor",
is an open-source, reflective programming language used mainly for
developing server-side applications and dynamic web content, and more
recently, other software.
PHP allows interaction with a large number of relational database
management systems, such as MySQL, Oracle, IBM DB2, Microsoft SQL
Server, PostgreSQL and SQLite. PHP runs on most major operating
systems, including UNIX, Linux, Windows, and Mac OS X, and can interact
with many major web servers. The official PHP website contains extensive
There is a command line interface, as well as GUI libraries such
as the Gimp Tool Kit (GTK+) and text mode libraries like Ncurses
PHP is the result of the efforts of many contributors. It is licensed
under the PHP License, a BSD-style license. Since version 4, it
has been powered by the Zend engine.
The option --with-mysql is
enabled by default. This default behavior may be disabled with the
--without-mysql configure option.
If MySQL is enabled without specifying the path to the
MySQL install DIR, PHP will use the bundled MySQL client libraries.
Users who run other applications that use MySQL (for example,
auth-mysql) should not use the bundled library, but rather specify the
path to MySQL's install directory, like so:
This will force PHP to use the client libraries installed by MySQL, thus
avoiding any conflicts.
MySQL is not enabled by default, nor is the MySQL library
bundled with PHP. Read this
FAQ for details on why. Use the
--with-mysql[=DIR] configure option
to include MySQL support.
You can download headers and libraries from
MySQL is no longer enabled by default, so the
php_mysql.dll DLL must be enabled inside of
php.ini. Also, PHP needs access to the MySQL client library. A file
named libmysql.dll is included in the Windows PHP
distribution and in order for PHP to talk to MySQL this file needs to be
available to the Windows systems PATH. See the FAQ
titled "How do I add my PHP
directory to the PATH on Windows" for information on how to do
this. Although copying libmysql.dll to the Windows
system directory also works (because the system directory is by default in
the system's PATH), it's not recommended.
As with enabling any PHP extension (such as
php_mysql.dll), the PHP directive
extension_dir should be set to
the directory where the PHP extensions are located. See also the
Manual Windows Installation
Instructions. An example extension_dir value for PHP 5 is
If when starting the web server an error similar to the following occurs:
"Unable to load dynamic library './php_mysql.dll'",
this is because php_mysql.dll and/or
libmysql.dll cannot be found by the system.
The default TCP port number to use when connecting to
the database server if no other port is specified. If
no default is specified, the port will be obtained
from the MYSQL_TCP_PORT environment
variable, the mysql-tcp entry in
/etc/services or the compile-time
MYSQL_PORT constant, in that order. Win32
will only use the MYSQL_PORT constant.
Most MySQL functions accept link_identifier as
the last optional parameter. If it is not provided, last opened
connection is used. If it doesn't exist, connection is tried to
establish with default parameters defined in php.ini. If it is not
successful, functions return FALSE.