PEAR::DataObject , générer des objets depuis une BDD – 2ème partie
Vous venez de générez vos premiers objets avec DataObject ?
Votre dossier dataobjects/ est plein d’objets frémissants, prêts à être torturés ?
Dans cette partie nous allons voir comment utiliser simplement ces objets afin de manipuler nos tables en BDD.
Charger le contexte
Afin d’utiliser ces objets php, nous nous devons de leur fournir le contexte, autrement dit, de les configurer.
Par exemple prenons une table Utilisateurs, ayant comme champs id,nom,prenom.
Lors de la génération de l’objet, un fichier a été créé: dataobjects/Utilisateurs.php, nous allons donc créer à notre tour le fichier de configuration pour cet objet. Pour le moment plaçons le à la racine du site.
utilisateurs.config.php
-
<?php
-
-
// Si la version de php ne supporte pas l’overloading
-
-
require_once(‘dataobjects/Utilisateurs.php’ );
-
-
// Parse le fichier de configuration
-
foreach( $config as $class => $values ) {
-
$options = &PEAR::getStaticProperty( $class, ‘options’ );
-
$options = $values;
-
}
-
-
?>
Vous aurez compris que ce fichier de configuration permettra à l’objet créé d’obtenir tous les paramètres spécifiés dans le db_dataobjects.ini.
Créez et utilisez vos objets
Le chemin n’a pas été trop long? Nous y sommes ! A deux pas de l’arrivée.
Nous allons créer un objet prêt à être utilisé pour gérer notre base de donnée.
Créons à la racine du site ce fichier : index.php
-
<?php
-
-
// Chargement de la librairie
-
require_once « DB/DataObject.php »;
-
// Chargement de la configuration de l’objet
-
require_once « utilisateurs.config.php »;
-
// Fixons le niveau de debug de 0 à 5
-
DB_DataObject::debugLevel(0);
-
-
//Génération de l’objet
-
$utilisateurs = & DB_DataObject::factory(‘utilisateurs ‘);
-
-
//Affichez les noms contenus dans table
-
$utilisateurs->find();
-
-
while( $utilisateurs->fetch() )
-
{
-
echo « $utilisateurs->nom <br /> »;
-
}
-
-
?>
Comme vous avez pu le constater, c’est relativement trivial.
Le prochain article portera sur l’utilisation approfondie des objets DataObjects.
