MySQL query builder PHP class

23,102

Solution 1

Finally I took Doctrine ORM

and modified it little bit to build SQL instead of DQL.

This works very nice and it able to construct complex queries.

Edit: You can find my final stable implementation in Stingle framework. Look at Db/QueryBuilder plugin.

Solution 2

DSQL - Query Builder for PHP is exactly what you're looking for, no dependencies and has MIT license:

$query = new atk4\dsql\Query();
$query  ->table('employees')
    ->where('birth_date','1961-05-02')
    ->field('count(*)')
    ;
echo "Employees born on May 2, 1961: ".$query->getOne();

https://github.com/atk4/dsql

Documentation: http://dsql.readthedocs.io/

Solution 3

The PhpToolCase library has a stand-alone query builder tool that is quite easy and handy to use.

There is full join support aswell: http://phptoolcase.com/guides/ptc-qb-guide.html

And ya, it seems to be written with camel style function and variable names :)

Share:
23,102
Alex Amiryan
Author by

Alex Amiryan

Founder, CEO and chief developer at Code Factory LLC

Updated on March 24, 2020

Comments

  • Alex Amiryan
    Alex Amiryan about 4 years

    I am building application which needs to have OOP style MySQL query builder. I want to be able to flexibly build complex queries using only PHP and to get resulting query string for execution with my own database driver.

    Does anyone know of a good standalone query builder for PHP? Please note that I don't need database driver I need bare MySQL query builder class (preferably written with camel style function and variable names).

  • Alex Amiryan
    Alex Amiryan about 12 years
    This very good one, but it lack ability to make left, inner, outer joins.
  • Cylindric
    Cylindric about 12 years
    How can it be 'very good' yet not support joins? That's pretty much fundamental. It's also untouched for over 3 years, may have uncertain support on newer PHP versions.