English

Créer des objets dynamiquement avec PHP

Saviez-vous qu'il est possible de convertir un tableau (array) en objet à la manière de ActionScript 3 en PHP? C'est simple et pratique.

Du tableau à l'objet

//Créer le tableau
$array = array(
'couleur' => 'bleu',
'gout' => 'pommes',
'odeur' => 'printemps',
'forme' => 'rond'
);

//Convertir le tableau en objet
$objet = (object) $array;

//Imprimer les propriétés de l'objet
echo $objet->couleur; //bleu
echo $objet->gout; //pommes
echo $objet->odeur; //printemps
echo $objet->forme; //rond

Mauvaises pratiques

Il faut faire preuve de beaucoup de précaution lorsqu'on applique cette méthode. Les fonctions acceptent un type particulier d'objet pour des raisons précises. En convertissant des tableaux en objets, vous contournez les accesseurs/mutateurs (ou set et get) de l'objet et risquez de passer des paramètres invalides.

Si vous devez utiliser la conversion de type de cette façon, commencez d'abord par revoir les raisons qui vous poussent à le faire.

Laisser un commentaire