Comment puis-je obtenir la valeur de l'objet(stdClass)?

en utilisant PHP, je dois analyser une chaîne venant à mon code dans un format comme celui-ci:

object(stdClass)(4) { ["Title"]=> string(5) "Fruit" ["Color"]=> string(6) "yellow" ["Name"]=> string(6) "banana" ["id"]=> int(3) }

je suis sûr qu'il y a une solution simple, mais je n'arrive pas à la trouver... comment obtenir la Couleur et le Nom?

Merci beaucoup.

23
demandé sur dwarbi 2011-10-31 19:46:59

3 réponses

Vous pouvez faire: $obj->Title etc.

Ou vous pouvez le mettre dans un tableau:

$array = get_object_vars($obj);
44
répondu Neal 2011-10-31 15:51:35

vous créez des objets StdClass et accédez aux méthodes à partir de ceux-ci comme suit:

$obj = new StdClass;

$obj->foo = "bar";
echo $obj->foo;

je recommande de sous-classer StdClass ou de créer votre propre classe générique afin que vous puissiez fournir vos propres méthodes.

transformer un objet StdClass dans un tableau:

vous pouvez le faire en utilisant le code suivant:

$array = get_object_vars($obj);

jetez un coup d'oeil à: http://php.net/manual/en/language.oop5.magic.php http://krisjordan.com/dynamic-properties-in-php-with-stdclass

10
répondu 2011-10-31 16:09:31

Exemple StdClass Object:

$obj = new stdClass();

$obj->foo = "bar";

Par Propriété (as others have mentioned)

echo $obj->foo; // -> "bar"

par la valeur de la variable:

$my_foo = 'foo';

echo $obj->{$my_foo}; // -> "bar"
0
répondu mfink 2018-08-17 21:30:52