fluentpdo

A PHP SQL query builder using PDO

Downloads
827K
Stars
925
Committers
31
fluentpdo - v2.2.4 Release Latest Release

Published by cbornhoft over 2 years ago

Bug Fixes

  • PDO::FETCH_DEFAULT is now used only if previously defined
fluentpdo - v2.2.3 Release

Published by cbornhoft almost 3 years ago

Major

  • Added support for PHP 8! (thanks to @azurre)

Bug Fixes

  • Fix schema specification support in WHERE clauses (thanks to @gillsonkell)
  • Fixed object referencing when cloning a query (thanks to @azurre)

Miscellaneous

  • Updated read me code examples
fluentpdo - v2.2.2 Release

Published by cbornhoft over 3 years ago

Bug Fixes

  • Fixed a fatal error thrown if getResult() returns a boolean (thanks to @CrazyPHP)

Miscellaneous

  • Updated read me
fluentpdo - v2.2.1 Release

Published by cbornhoft over 3 years ago

Bug Fixes

  • Query::debug() can now be declared as a Closure or anonymous function without producing an "undefined method" error

Miscellaneous

  • Added PHP version and PDO extension constraints to composer.json
  • Updated read me
fluentpdo - v2.2.0 Release

Published by cbornhoft about 4 years ago

Bug Fixes

  • When automatic SQL type conversion is turned off, null values will no longer be removed from the parameter list.
  • Fixed potential memory reference error
  • Query::debug now defaults to false to avoid accidental implicit "truthy" values

Code Improvements

  • Performance in several loops should be improved during query and parameter building phases
  • Added method parameter type hints where possible

Miscellaneous

  • Updated read me
fluentpdo - v2.1.2 Release

Published by cbornhoft almost 6 years ago

Features

  • Added support for insert queries into tables with no primary key assigned
fluentpdo - v2.1.1 Release

Published by cbornhoft about 6 years ago

Bug Fixes

  • PHP null values are now correctly converted to literal SQL null values for INSERT and UPDATE queries
fluentpdo - v2.1.0 Release

Published by cbornhoft about 6 years ago

Features

  • Select::fetch() now supports cursor traversal! Whatever PDOStatement::fetch() supports should also now be possible in Fluent.

Code Improvements

  • Refactored a couple of confusing methods by splitting them into their own parts. A small step towards fully cleaning up the complex join system.

Miscellaneous

  • Updated read me
fluentpdo - v2.0.0 GA Release!

Published by cbornhoft about 6 years ago

It's live and ready for use! 2.0 is now officially released.

fluentpdo - v2.0.0-beta2 Release

Published by cbornhoft about 6 years ago

If no issues are found, this will be the final release before the 2.0.0 GA on October 15, 2018

Features

  • It's now possible to supply the $index in Select::fetchAll() with array syntax to group rows by the field selection: $result->fetchAll('field[]');

Miscellaneous

  • Updated read me
fluentpdo - v2.0.0-beta1 Release

Published by cbornhoft about 6 years ago

The first beta release!

Please use this release in your projects. All tests are passing, and we do not foresee any major problems. Issues will be resolved quickly. Our goal is to release 2.0.0 and have it production ready in 1 week.

Major Changes

  • Fluent now officially supports PHP 7.3

Features

  • No more need for ->select(null)!!! You can now select individual columns by specifying an overwrite request: $fluent->from('table')->select('table.id', true)
  • Type conversion is available on both reads and writes
  • A WHERE clause is now required for DELETE and UPDATE queries to prevent accidental data loss. If you do want to update all rows, you can write ->where('1')
  • Fluent now has proper error handling, with an error message store, and will throw Exceptions when appropriate

Code Improvements

  • Additional return values assigned to methods
  • Cleaned up and simplified Base::execute()

Miscellaneous

  • PHPDocs updated
fluentpdo - v2.0.0-alpha7 Release

Published by cbornhoft about 6 years ago

This is a pre-release! Use at your own risk!

Features

  • Dots (.) and colons (:) can now be escaped with a backslash (\) to prevent a smart join on a statement! This is helpful if you don't want to disable smart joining entirely. In addition, Fluent will remove the backslashes for you before running the final query.

Miscellaneous

  • Added associated tests
fluentpdo - v2.0.0-alpha6 Release

Published by cbornhoft about 6 years ago

This is a pre-release! Use at your own risk!

Features

  • Added Json class for future JSON functions

Bug Fixes

  • Fixed incorrect Regex function name inside Base::debug()

Miscellaneous

  • Updated fluentdb.sql test database
  • Updated travis to use xenial
fluentpdo - v2.0.0-alpha5 Release

Published by cbornhoft about 6 years ago

This is a pre-release! Use at your own risk!

Features

  • Nearly 100% table name coverage for UTF-8 characters

Code Improvements

  • All regular expressions have been moved to their own class and given their own methods for clarity

Miscellaneous

  • Added associated tests
fluentpdo - v2.0.0-alpha4 Release

Published by cbornhoft about 6 years ago

This is a pre-release! Use at your own risk!

Features

  • OR statements in WHERE clauses are now supported!
  • Named parameters are now supported in Update::set()
  • Arrays given to the parameters field in where() will now build correctly (id IN (?, ?, ?) -> [1, 2, 3])

Code Improvements

  • WHERE now has its own method for query building

Miscellaneous

  • Added associated tests
fluentpdo - v2.0.0-alpha3 Release

Published by cbornhoft about 6 years ago

This is a pre-release! Use at your own risk!

Major Changes

  • Dropped support for PHP <= 7.0. Minimum version required is now PHP 7.1

Features

  • Table prefix support has been added!

Code Improvements

  • All old array syntax has been converted to new format

Miscellaneous

  • Updated function declarations to PSR-1 standard
  • @throws tags have been added to PHPDocs
fluentpdo - v2.0.0-alpha2 Release

Published by cbornhoft about 6 years ago

This is a pre-release! Use at your own risk!

Code Improvements

  • PHPUnit 7.x is now Fluent's test platform
  • Code coverage has improved, nearly 100%

Miscellaneous

  • Updated travis-ci config to use PHPUnit
  • Updated composer.json
  • Updated readme
fluentpdo - v1.1.3 Release

Published by cbornhoft over 6 years ago

Bug Fixes
Add PHP 7.2 functionality by ensuring counting is performed only on Countable data. (#240)

fluentpdo - v2.0.0-alpha1 Release

Published by cbornhoft almost 7 years ago

This is a pre-release! Use at your own risk!

Major Changes

  • 2.0 drops all support for PHP 5.x
  • Added support for PHP 7.2

Code Improvements

  • Fluent is now fully compatible with PSR-4 autoloading standards
  • Added namespaces to all classes
  • Renamed and reorganized all classes and files
  • Ensure statement clauses are countable before attempting to count them (fixed for 7.2, as it warns against this)

Miscellaneous

  • Updated travis-ci config
  • Updated composer.json to match the current state of the repository
  • Updated readme
fluentpdo - v1.1.2 Release

Published by cbornhoft about 7 years ago

The following changes have been made to this release:

Bug Fixes

  • FluentUtils::FormatQuery() no longer accidentally splits words that are not keywords (ALEJ AND RO)
  • Databases and tables in queries can now contain nearly every utf8 character allowed within all RDBMS's (#209)
  • STDERR must both be defined and a resource to be used as the error handler
  • Instances of FluentLiteral in where() statements are now taken literally (#213)

Code Improvements

  • A fatal E_USER_ERROR is now thrown when __call() does not recognize the method name (to prevent typos from going unnoticed) (#214)
  • SET, OUTER and FULL are now classified as keywords

Miscellaneous

  • Updated composer.json to match the current state of the repository
  • Updated and improved docs