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

Comment convertir un objet en tableau en utilisant php

PHPz
PHPzoriginal
2023-03-27 19:05:551316parcourir

PHP est un langage de programmation orienté objet. Les objets sont l'une des structures de données les plus élémentaires de PHP et l'un des types de données les plus couramment utilisés. En PHP, il est généralement très courant de convertir des objets en tableaux, comme stocker des objets dans une base de données ou sérialiser des objets, etc. Cet article explique comment convertir des objets PHP en tableaux.

1. Utilisez la fonction get_object_vars()

PHP fournit la fonction get_object_vars(), qui peut convertir les valeurs d'attribut de l'objet en un tableau associatif. Cette fonction reçoit un objet en paramètre et renvoie un tableau dont les clés sont les noms des propriétés de l'objet et dont les valeurs sont les valeurs des propriétés. Voici un exemple :

class Person {
    public $name;
    public $age;
    public $gender;
    public function __construct($name, $age, $gender) {
        $this->name = $name;
        $this->age = $age;
        $this->gender = $gender;
    }
}
$person = new Person('Tom', 18, 'male');
$arr = get_object_vars($person);
print_r($arr);

Le résultat de sortie est :

Array
(
    [name] => Tom
    [age] => 18
    [gender] => male
)

2. Utilisation de la fonction json_encode()

En plus d'utiliser la fonction get_object_vars(), nous pouvons également utiliser la fonction json_encode() pour convertir. l'objet en chaîne au format JSON, puis convertissez-le en tableau à l'aide de la fonction json_decode(). Voici un exemple :

class Person {
    public $name;
    public $age;
    public $gender;
    public function __construct($name, $age, $gender) {
        $this->name = $name;
        $this->age = $age;
        $this->gender = $gender;
    }
}
$person = new Person('Tom', 18, 'male');
$jsonStr = json_encode($person);
$arr = json_decode($jsonStr, true);
print_r($arr);

Le résultat est le même que l'exemple précédent.

3. Utilisez la méthode __toArray() de l'objet

Si vous maîtrisez les connaissances de base de la programmation orientée objet, vous pouvez définir une méthode __toArray() dans votre propre classe, qui est utilisée pour convertir le object's La valeur de l'attribut est convertie en tableau. Voici un exemple :

class Person {
    public $name;
    public $age;
    public $gender;
    public function __construct($name, $age, $gender) {
        $this->name = $name;
        $this->age = $age;
        $this->gender = $gender;
    }
    public function __toArray() {
        $arr = [];
        $arr['name'] = $this->name;
        $arr['age'] = $this->age;
        $arr['gender'] = $this->gender;
        return $arr;
    }
}
$person = new Person('Tom', 18, 'male');
$arr = $person->__toArray();
print_r($arr);

Le résultat de sortie est également le même que les deux exemples précédents.

Résumé

Ci-dessus sont les trois méthodes de conversion d'objets PHP en tableaux. Différentes méthodes peuvent convenir à différents scénarios d'application, et la méthode à utiliser dépend de vos besoins. Quelle que soit la méthode que vous utilisez, la maîtrise de ces méthodes est une compétence très importante dans le développement PHP, qui peut nous faciliter l'exploitation des objets et améliorer l'efficacité du développement.

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