Skip to content
forked from voku/paris

A lightweight Active Record implementation for PHP5, built on top of Idiorm.

Notifications You must be signed in to change notification settings

hackolein/paris

 
 

Repository files navigation

Build Status codecov.io Codacy Badge SensioLabsInsight Total Downloads License

Paris

http://j4mie.github.com/idiormandparis/

WARNING: this is only a Maintained-Fork of "https://github.com/j4mie/paris/"


Installation

The recommended installation way is through Composer.

$ composer require voku/paris

Feature complete

Paris is now considered to be feature complete as of version 1.5.0. Whilst it will continue to be maintained with bug fixes there will be no further new features added from this point on.

Please do not submit feature requests or pull requests adding new features as they will be closed without ceremony.


A lightweight Active Record implementation for PHP5.

Built on top of Idiorm.

Tested on PHP 5.2.0+ - may work on earlier versions with PDO and the correct database drivers.

Released under a BSD license.

Features

  • Extremely simple configuration.
  • Exposes the full power of Idiorm's fluent query API.
  • Supports associations.
  • Simple mechanism to encapsulate common queries in filter methods.
  • Built on top of PDO.
  • Uses prepared statements throughout to protect against SQL injection attacks.
  • Database agnostic. Currently supports SQLite, MySQL, Firebird and PostgreSQL. May support others, please give it a try!
  • Supports collections of models with method chaining to filter or apply actions to multiple results at once.
  • Multiple connections are supported

Documentation

The documentation is hosted on Read the Docs: paris.rtfd.org

Building the Docs

You will need to install Sphinx and then in the docs folder run:

make html

The documentation will now be in docs/_build/html/index.html

Let's See Some Code

class User extends Model {
    public function tweets() {
        return $this->has_many('Tweet');
    }
}

class Tweet extends Model {}

$user = Model::factory('User')
    ->where_equal('username', 'j4mie')
    ->find_one();
$user->first_name = 'Jamie';
$user->save();

$tweets = $user->tweets()->find_many();
foreach ($tweets as $tweet) {
    echo $tweet->text;
}

About

A lightweight Active Record implementation for PHP5, built on top of Idiorm.

Resources

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%