diff --git a/README.md b/README.md index 895d31b..363628e 100644 --- a/README.md +++ b/README.md @@ -31,26 +31,28 @@ To include Query in your PHP project, just include the `autoload.php` file. This Create a connection array or object similar to this: - 'mysql', - 'host' => 'localhost', - 'user' => 'root', - 'pass' => '', - 'port' => '3306', - 'database' => 'test_db', +$params = array( + 'type' => 'mysql', + 'host' => 'localhost', + 'user' => 'root', + 'pass' => '', + 'port' => '3306', + 'database' => 'test_db', - // Only required - // SQLite or Firebird - 'file' => '/path/to/db/file', + // Only required + // SQLite or Firebird + 'file' => '/path/to/db/file', - // Optional paramaters - 'prefix' => 'tbl_', // Database table prefix - 'alias' => 'old' // Connection name for the Query function - ); + // Optional paramaters + 'prefix' => 'tbl_', // Database table prefix + 'alias' => 'old' // Connection name for the Query function +); - $db = Query($params); +$db = Query($params); +``` The parameters required depend on the database. @@ -58,19 +60,25 @@ The parameters required depend on the database. You can use the `Query()` function as a reference to the last connected database. E.g. - Query()->get('table_name'); +```php +Query()->get('table_name'); +``` or - $result = Query()->query($sql); +```php +$result = Query()->query($sql); +``` If the `alias` key is set in the parameters, you can refer to a specific database connection - // Set the alias in the connection parameters - $params['alias'] = 'old'; +```php +// Set the alias in the connection parameters +$params['alias'] = 'old'; - // Connect to the legacy database - Query('old')->query($sql); +// Connect to the legacy database +Query('old')->query($sql); +``` ### Running Queries Query uses the same interface as CodeIgniter's [Active Record class](http://ellislab.com/codeigniter/user-guide/database/active_record.html). However, it does not implement the `update_batch` or caching methods. @@ -86,22 +94,26 @@ To run a plain query, `$db->query($sql)` An example of a moderately complex query: - $query = $db->select('id, key as k, val') - ->from('table t') - ->where('k >', 3) - ->or_where('id !=' 5) - ->order_by('val', 'DESC') - ->limit(3, 1) - ->get(); +```php +$query = $db->select('id, key as k, val') + ->from('table t') + ->where('k >', 3) + ->or_where('id !=' 5) + ->order_by('val', 'DESC') + ->limit(3, 1) + ->get(); +``` This will generate a query similar to (with this being the output for a Postgres database): - SELECT "id", "key" AS "k", "val" - FROM "table" "t" - WHERE "k" > ? - OR "id" != ? - ORDER BY "val" DESC - LIMIT 3 OFFSET 1 +```sql +SELECT "id", "key" AS "k", "val" +FROM "table" "t" +WHERE "k" > ? +OR "id" != ? +ORDER BY "val" DESC +LIMIT 3 OFFSET 1 +``` To retreive the results of a query, use the PDO method [fetch](http://php.net/manual/en/pdostatement.fetch.php) and/or [fetchAll](http://php.net/manual/en/pdostatement.fetchall.php). @@ -114,18 +126,21 @@ To retreive the results of a query, use the PDO method [fetch](http://php.net/ma ### Inserting / Updating An example of an insert query: - - $query = $db->set('foo', 'bar') - ->set('foobar', 'baz') - ->where('foo !=', 'bar') - ->insert('table'); +```php +$query = $db->set('foo', 'bar') + ->set('foobar', 'baz') + ->where('foo !=', 'bar') + ->insert('table'); +``` An example of an update query: - $query = $db->set('foo', 'bar') - ->set('foobar', 'baz') - ->where('foo !=', 'bar') - ->update('table'); +```php +$query = $db->set('foo', 'bar') + ->set('foobar', 'baz') + ->where('foo !=', 'bar') + ->update('table'); +``` The `set` method can also take an array as a paramater, instead of setting individual values.