public function __get($name) { if ("nbrJours" == $name && null == $this->_nbrJours) { $nbJours = 0; if (!empty($this->_prestationsPanier)) { /** @var PrestationPanier $prestationPanier */ foreach ($this->_prestationsPanier as $prestationPanier) { $aDateArrivee = explode("/", $prestationPanier->debut); $sDateArrivee = $aDateArrivee['2'] . "-" . $aDateArrivee['1'] . "-" . $aDateArrivee['0']; $aDateDepart = explode("/", $prestationPanier->fin); $sDateDepart = $aDateDepart['2'] . "-" . $aDateDepart['1'] . "-" . $aDateDepart['0']; $oInterval = date_diff(new \DateTime($sDateArrivee), new \DateTime($sDateDepart)); $nbJours += $oInterval->format('%a'); } $this->_nbrJours = $nbJours; return $nbJours; } else { throw new \SitecRESA\Exception\Api("Vous n'avez aucune prestationPanier"); } } else { return parent::__get($name); } }
public function __get($name) { $retour = parent::__get($name); if (null === $retour && $this->_panier != null && "planTarifaire" == $name && null == $this->_planTarifaire) { $oDispoProduit = $this->prestation->disponibilites($this->_debut, $this->_fin, $this->_prestataire->resolve()); if ($oDispoProduit instanceof AccesResolverList) { foreach ($oDispoProduit as $dispoProduit) { foreach ($dispoProduit->plansTarifaires as $oPlanTarifaire) { if ($oPlanTarifaire->id == $this->_idPlanTarifaire) { $this->_planTarifaire = $oPlanTarifaire; return $this->_planTarifaire; } } } } else { foreach ($oDispoProduit->plansTarifaires as $oPlanTarifaire) { if ($oPlanTarifaire->id == $this->_idPlanTarifaire) { $this->_planTarifaire = $oPlanTarifaire; return $this->_planTarifaire; } } } } return $retour; }