Php Mysql

  1. Php Mysql Download
  2. Php Mysql App Builder
  3. Php Mysql Query
  4. Php Mysql Connect

The MySQL native driver for PHP (mysqlnd) is a drop-in replacement for the MySQL Client Library (libmysql) for the PHP script language.

I have installed PHP 7 and MySQL 5.5.47 on Ubuntu 14.04 (Trusty Tahr). I have checked installed extension using: sudo apt-cache search php7-. It outputs: php7.0-common - Common files for. Mysqlescapestring — Escapes a string for use in a mysqlquery mysqlfetcharray — Fetch a result row as an associative array, a numeric array, or both mysqlfetchassoc — Fetch a result row as an associative array. Most MySQL functions accept linkidentifier 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.

  1. PHP Data Objects (PDO) extension is a Database Abstraction Layer. It is like an interface for the backend to interact with the MySQL database and make changes without making any change in the PHP code. It also gives you the freedom to work with multiple databases. The major advantage of using PDO is that your code stays simple and portable.
  2. As a MySQL or PHP developer, once you step beyond the comfortable confines of English-only character sets, you quickly find yourself entangled in the wonderfully wacky world of UTF-8 encoding. A Quick UTF-8 Primer Unicode is a widely-used computing industry standard that defines a comprehensive.

PHP MySQL extensions

The PHP MySQL extensions are lightweight wrappers on top of a C client library. There are 3 PHP MySQL extensions:

  • ext/mysql (not recommended)

Php Mysql Download

It is recommended to use either the mysqli or PDO_MySQL extensions. It is not recommended to use the old mysql extension for new development.

Choosing a Library

The extensions can either use the mysqlnd or libmysql library to connect from PHP to MySQL. Choosing one or the other library is a compile time decision. Both libraries are supported and constantly being improved.

MySQL recommends using the MySQL native driver for PHP (mysqlnd) together with ext/mysqli or PDO_MySQL.

Download Source Code & Binaries

All 3 PHP MySQL extensions and the mysqlnd library are part of the source code of PHP. The source code and binaries are available from:

PHP 5.4 has mysqlnd as default

As of PHP 5.4, the mysqlnd library is a compile time default to all PHP MySQL extensions. Also, the Windows team is using mysqlnd for the official PHP Windows distribution since mysqlnd became available in PHP 5.3.

Advantages of using mysqlnd

The mysqlnd library is highly optimized for and tightly integrated into PHP. The MySQL Client Library cannot offer the same optimizations because it is a general-purpose client library.

The mysqlnd library is using PHP internal C infrastructure for seamless integration into PHP. In addition, it is using PHP memory management, PHP Streams (I/O abstraction) and PHP string handling routines. The use of PHP memory management by mysqlnd allows, for example, memory savings by using read-only variables (copy on write) and makes mysqlnd apply to PHP memory limits. Additional advantages include:

  • Ships together with the PHP 5.3, and later, source
  • No need to install MySQL Client Library
  • Powerful plugins. See Below.

Mysqlnd Plugins

A wide range of mysqlnd plugins, providing additional features are available from PECL. Popular mysqlnd plugins include:

Additional Resources

(PHP 4, PHP 5)

mysql_free_resultFree result memory


This extension was deprecated in PHP 5.5.0, and it was removed in PHP 7.0.0.Instead, the MySQLi or PDO_MySQL extension should be used.See also MySQL: choosing an API guide.Alternatives to this function include:

  • Assign the value of null to the PDO object, or PDOStatement::closeCursor()


mysql_free_result() will free all memory associated with the result identifier result.

mysql_free_result() only needs to be called if you are concerned about how much memory is being used for queries that return large result sets. All associated result memory is automatically freed at the end of the script's execution.



The result resource thatis being evaluated. This result comes from a call tomysql_query().

Return Values

Returns true on success or false on failure.

If a non-resource is used for the result, an error of level E_WARNING will be emitted. It's worth noting that mysql_query() only returns a resource for SELECT, SHOW, EXPLAIN, and DESCRIBE queries.


Example #1 A mysql_free_result() example

= mysql_query('SELECT id,email FROM people WHERE id = '42');
if (!
$result) {
'Could not run query: ' . mysql_error();
/* Use the result, assuming we're done with it afterwards */
$row = mysql_fetch_assoc($result);
/* Now we free up the result and continue on with our script */


Php Mysql


For backward compatibility, the followingdeprecated alias may be used: mysql_freeresult()

See Also

  • mysql_query() - Send a MySQL query
  • is_resource() - Finds whether a variable is a resource
Phpwebmaster at bluesting dot co dot za
10 years ago
mysql_query() also returns a resource for 'OPTIMIZE TABLE' statements!
admin at ifyouwantblood dot de
13 years ago

Php Mysql App Builder

yes this function may increase the memory usage if you use unbuffered querys and if you have not fetched all the data from mysql. in this case the mysql api has a problem: you want to free the result but do not want to close the connection. now mysql will only accept another query if all data has been fetched, so the api now must fetch the rest of the data when calling mysql_free_result().
so only use unbuffered querys if you fetch all the data (and need it).
AnonymousPhp Mysql
14 years ago

Php Mysql Query

If you're seeing warnings like 'Warning: Unknown: 6 result set(s) not freed. Use mysql_free_result to free result sets which were requested using mysql_query() in Unknown on line 0' and want to turn them off, set mysql.trace_mode = Off in your php.ini
How to connect php with database

Php Mysql Connect

  • MySQL Functions