Ecrasement de valeurs dans variables
Bonjour à tous,
Je séche sur un comportement que je ne comprends pas.
J'utilise 3 fois une fonction pour récupérer une requête SQL.
Pris unitairement, les valeurs sont correctes mais quand je le fais en boucle, la dernière requête écrase les précédentes !!!
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
$end = $dateTime()->format('Y-m-d');
$begin = new DateTime($end);
$begin->modify("-12 Month");
$opt =Doctrine_core::GetTable('assure_employeur')->derniers_mois($assure->getId(),$begin->format('Y-m-d'), $end)->fetchOne();
echo $opt->getHeure();
$begin = new DateTime($end);
$begin->modify("-6 Month");
$opti = Doctrine_core::GetTable('assure_employeur')->derniers_mois($assure->getId(),$begin->format('Y-m-d'),$end)->fetchOne();
echo $opti->getHeure();
$begin = new DateTime($end);
$begin->modify("-3 Month");
$_8 = Doctrine_core::GetTable('assure_employeur')->derniers_mois($assure->getId(),$begin->format('Y-m-d'),$end)->fetchOne();
echo $_8->getHeure();
echo $opti->getHeure(); |
ma fonction:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
public function derniers_mois($assure_id,$begin, $end )
{
$q= $this->queryOD($assure_id);
$q->select('a.assure_id, SUM(p.salaire_brut) salaire_brut, SUM(p.salaire_net) salaire_net, SUM(p.heure) heure')
->andWhere('p.mois BETWEEN ? and ?', array($begin, $end))
->groupBy('a.assure_id')
;
return $q;
} |
à l'affichage je retrouve
80
60
30
30
alors que le dernier devrait être 60 !!!