Maison  >  Article  >  développement back-end  >  Comment convertir un objet en tableau en php

Comment convertir un objet en tableau en php

zbt
zbtoriginal
2023-06-12 17:16:592480parcourir

La méthode permettant à PHP de convertir un objet en tableau est la suivante : 1. Utilisez la conversion de type forcée et ajoutez le type cible "(array)" entre parenthèses avant la variable à convertir ; 2. Utilisez la fonction "get_object_vars()" ; , Renvoie un tableau associatif composé des propriétés définies dans l'objet spécifié par obj.

Comment convertir un objet en tableau en php

L'environnement d'exploitation de ce tutoriel : système windows10, version php8.1.3, ordinateur DELL G3.

Méthode PHP pour convertir un objet en tableau

Méthode 1 : Utiliser la conversion de type forcée --ajouter le type cible "(tableau)" entre parenthèses avant la variable à convertir

Exemple : objet Conversion de type forcée to array

class foo
{
function do_foo()
{
echo "Doing foo.";
}
}
$bar = new foo;
$bar->do_foo();
print_r((array)$bar);
?>

Sortie :

Doing foo.Array ( )

Informations étendues :

Les types de données PHP autorisés pour la conversion sont :

(int), (integer) : converti en entier

(float), (double), (real) : Convertir en type à virgule flottante

(string) : Convertir en chaîne

(bool), (boolean) : Convertir en type booléen

(array) : Convertir en tableau

(object) : Convertir en objet

Méthode 2 : utilisez la fonction get_object_vars()

get_object_vars — Renvoie un tableau associatif composé de propriétés d'objet. Format de syntaxe :

get_object_vars ( object $obj )

Renvoie un tableau associatif composé de propriétés définies dans l'objet spécifié par obj.

Exemple :

class Point2D {
var $x, $y;
var $label;
function Point2D($x, $y)
{
$this->x = $x;
$this->y = $y;
}
function setLabel($label)
{
$this->label = $label;
}
function getPoint()
{
return array("x" => $this->x,
"y" => $this->y,
"label" => $this->label);
}
}
// "$label" is declared but not defined
$p1 = new Point2D(1.233, 3.445);
print_r(get_object_vars($p1));
$p1->setLabel("point #1");
print_r(get_object_vars($p1));
?>

Sortie :

Array
(
[x] => 1.233
[y] => 3.445
[label] =>
)
Array
(
[x] => 1.233
[y] => 3.445
[label] => point #1
)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn