Skip to content

My implementation of a data access object for PHP. It abstracts basic database create-retrieve-update-delete operations, reducing the number of SQL code.

Notifications You must be signed in to change notification settings

ricardolima-xyz/dao

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

DAO-PHP

This is a PHP implementation of a data access object using PDO. This library offers basic database manipulation capabilities, automating basic Create-Read-Update-Delete tasks. Currently tested on MySQL, MariaDB, SQLite and PostgreSQL

Using it is very simple. First you define your DAO:

include_once 'dao.class.php';

$myDAO = new DAO(
    // PDO Connection string
    new PDO("sqlite:./test.sqlite"),
    // DB Table name
    'table',
    // Mapping of table column names and PDO param types
    [
        'id'            => PDO::PARAM_INT,
        'columnone'     => PDO::PARAM_STR,
        'columntwo'     => PDO::PARAM_STR
    ],
    // Defines which column is the primary key (requirement of this library)
    'id',
    // Specifies whether the primary key is auto generated or not. If primary
    // key is auto generated, you dont need to pass it when creating objects
    true
);

Now you have an object which is ready to perform basic CRUD operations without writing one line of SQL:

// Creates a new object in the database. Note that id doesn't need to be specified if it
// is autogenerated in database and this information was passed in the constructor
$id = $myDAO->create(['columnone'=>'abc', columntwo=>'xyz']);

// Retrieves the object with given primary key
$object = $myDAO->get($id);

// Checks the existence of the object without retrieving it
$itExists =  $myDAO->exists($id);
$itDoesNotExist =  $myDAO->exists('BLAHBLAHBLAH');

// Retrieves a list of objects
$result = $myDAO->list();

// Deletes the object
$result = $myDAO->del($id);

About

My implementation of a data access object for PHP. It abstracts basic database create-retrieve-update-delete operations, reducing the number of SQL code.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages