symfony : surcharger une fonction get dans le model

Pour mon projet actuelle, j’avais besoin de surcharger certaines fonctions get dans le model pour re-formater le résultat. Une simple appelle de la fonction en utilisant l’opérateur parent:: n’a pas fonctionné et j’obtiens une page vide.

public function getListStatuts()
{
$list = Statut::getLabelStatus(parent::getListStatuts());

return implode(", ",$list);
}

Sur la toile, j’ai trouvé plein de proposition est aucune des solutions proposés n’a réglé mon problème sauf une qui consiste à utilisé la fonction magique : __get.

public function getListStatuts()
{
$list = Statut::getLabelStatus(parent::__get('list_statuts'));

return implode(", ",$list);
}

Une réflexion sur “symfony : surcharger une fonction get dans le model

  1. Bonjour,

    L’appel au parent n’est pas nécessaire et je pense que l’utilisation de la méthode _get de Doctrine (avec un seul underscore) est plus conseillée que la méthode __get de PHP car avec celle de PHP on perd tout les contrôles et traitements fait par doctrine.

    Je pense donc que $this->_get(‘list_statuts’) est plus approprié que parent::__get(‘list_statuts’)

Répondre à zaor Annuler la réponse.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.