<?php
DB_DataObject::debugLevel(1);
$person = new DataObjects_Person;
// pour générer "person.id as id , person.name as name ......."
$person->selectAs();
// pour générer une liste restreinte... "person.age as age , person.name as name"
$person->selectAs(array('age','name'));
// utilisation d'un autre objet.
$car = new DataObjects_Car;
// c'est la première voiture
$car->use = 'first';
// utilisation de joinAdd pour ajouter la voiture..
$person->joinAdd($car);
// maintenant, ajout de toutes les colonnes sélectionnées pour la voiture eg. "car.id as car_id, car.name as car_name ...."
$person->selectAs($car, 'car_%s');
// sélection uniquement de quelques colonnes depuis la table des voitures.
// notez que vous devez utiliser le nom de la table à la fin..
$person->selectAs(array('color','topspeed'), 'car_%s','car');
// maintenant, l'utilisateur peut avoir une seconde voiture....
$secondcar = new DataObjects_Car;
$secondcar->use = 'second';
// maintenant que nous avons une voiture...
// donc, nous joingnons la seconde voiture "FROM person INNER JOIN car ..... , car as secondcar WHERE .....
$person->joinAdd($secondcar,'','secondcar');
// et maintenant, nous pouvons ajouter toutes les colonnes
// "secondcar.id as secondcar_id, secondcar.name as secondcar_name ........
// notez que vous devez utiliser le dernier champ sous le format SECONDCAR.ID en utilisant le 'AS' name, plutôt que
// le vrai nom de la table 'car' de l'objet
$person->selectAs($secondcar, 'secondcar_%s','secondcar');
// Ok, exécutons la requête...
$person->find();
while ($person->fetch()) {
......
}
?> |