Skip to content
This repository has been archived by the owner on Dec 12, 2019. It is now read-only.

tomsisk/php7-mysql-shim

 
 

Repository files navigation

Build Status Scrutinizer Code Quality Code Coverage

PHP 7 Shim for ext/mysql

This library attempts to create a drop-in replacement for ext/mysql on PHP 7 using mysqli.

For the most part, it should just work.

Why You Shouldn't Use This Library

This library is meant to be a stop-gap. It will be slower than using the native functions directly.

You should switch to ext/pdo_mysql or ext/mysqli, and migrate to prepared queries to ensure you are securely interacting with your database.

Installation

To install, either add dshafik/php7-mysql-shim to your composer.json:

$ composer require dshafik/php7-mysql-shim

or, clone/download this repo, and include mysql.php in your project.

Usage

Once the file is included, it will create mysql_* function if they don't already exist. You may safely include the file in a PHP 5.x project, it will do nothing.

Caveats

  • Calls to is_resource() and get_resource_type() on MySQL connections and results will fail as these are now their mysqli equivalents.
  • Some errors are now from ext/mysqli, and others are E_USER_WARNING instead of E_WARNING.
  • You must use the mysqli.* INI entries instead of mysql.* (e.g. mysqli.default_user instead of mysql.default_user)
  • If no host, username, password parameter is provided when using the mysql_* functions, the default values from the corresponding mysqli.* settings from php.ini file will be use (e.g. mysqli.default_host, mysqli.default_user, mysqli.default_pw)
  • Column lengths reported by mysql_field_len() assume latin1

About

A shim for ext/mysql in PHP 7+

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%