the internets!

~ Wednesday, October 14 ~
Permalink

Database Manager

Database Manager

Bueno, este “paquete” es algo que empecé nomas para un sitio que me pidieron, el sitio es pequeño, no ocupaba mucha lógica de parte de base de datos, tablas sencillas para estar guardando su información.


Aunque si son varias tablas, y como me daba flojera crear los managers para cada uno, y el sitio no es tan grande como para usar algún framework, decidí hacer este paquete de clases, que me ayudaran a hacer el trabajo más rápido.


En si, es tan solo clases para crear los querys, insert, update, delete. Donde creas una clase que “mapee” a la tabla, y extendiendo la clase Entidad, tienes los métodos normales, como create(), update(), y delete(), y existe un manager para las entidades para realizar los finders. Bueno, mejor un ejemplo tal vez así me de a entender mejor.



// Crear un nuevo usuario
$oUser = new User();
$oUser->setCreatedDate(date('Y-m-d G:i:s'));
$oUser->setUserName('admin');
$oUser->setPassword('password123');
$oUser->setFirstName('Carlos Gabriel');
$oUser->setLastName('Lopez de la Rosa');
$oUser->setStatus(1);
$oUser->setType(1);
$oUser->create();

//Finders
// Buscar por id
$oUser    EntitiesManager::findById(9'User');
// Obtener un arreglo de objetos
$arrUsers EntitiesManager::findAll('User');
// Buscar
$arrUsers EntitiesManager::search(array('user_name''password'),
                                    array(
'admin''password123'),
                                    
'Users');

El zip contiene:



    lib/+
         +- dbmanager/DatabaseManager.php
          |                      - DBParam.php
          |                      - DBQuery.php
          |                      - utils/DBManagerUtils.php
         +- entities/Entity.php
                           - User.php (class example)
                           - manager/EntitiesManager.php                       


Download [ dbmanager.zip ]

 ()