Giter VIP home page Giter VIP logo

php7-mysql-shim's Introduction

Build Status 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 lib/mysql.php in your project.

Usage

When installed with composer, the library is included automatically.

Once the lib/mysql.php file is included, it will create mysql_* functions if they don't already exist. You may safely include the file in a PHP 5.3.6+ project, it will do nothing if the mysql extension is already available.

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 used (e.g. mysqli.default_host, mysqli.default_user, mysqli.default_pw)

Alternatives

Instead of using this drop-in-replacement library you should consider refactoring your code from mysql to e.g. mysqli. This process can be automated with e.g. https://stackoverflow.com/a/61597957

php7-mysql-shim's People

Contributors

dshafik avatar dependabot[bot] avatar naaando avatar philip avatar staabm avatar bpolaszek avatar sap-et avatar asa1-et-jenkins avatar sonnysavage avatar gharlan avatar techhead avatar mlocati avatar mgilfillan avatar muhammedalialat avatar stefket avatar swenvanzanten avatar webysther avatar mekras avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.