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

Comment convertir un objet en tableau d'objets en php

PHPz
PHPzoriginal
2023-04-25 10:32:44481parcourir

PHP est un langage de programmation orienté objet dans lequel les objets sont les éléments de base du code. Le tableau est un autre type de données couramment utilisé qui consiste en des éléments accessibles par index. Dans certains cas, la conversion d'objets en tableaux ou en tableaux d'objets peut rendre le code plus pratique et plus concis. Cet article explique comment réaliser cette fonction en PHP.

  1. Convertir un objet en tableau

En PHP, vous pouvez utiliser cast pour convertir un objet en tableau. Voici un exemple :

class Person {
  public $name;
  public $age;

  public function __construct($name, $age) {
    $this->name = $name;
    $this->age = $age;
  }
}

$person = new Person("Tom", 20);

$array = (array) $person;

print_r($array);

Le résultat est :

Array
(
    [name] => Tom
    [age] => 20
)

Dans cet exemple, nous définissons d'abord une classe Person, qui a deux attributs : nom et âge. Ensuite, nous créons une instance $person. Ensuite, utilisez la syntaxe (array) pour convertir $person en tableau. Enfin, utilisez la fonction print_r() pour afficher les valeurs du tableau.

Il convient de noter que lors de l'utilisation de cast pour convertir un objet en tableau, si l'objet possède des propriétés privées ou des propriétés protégées, les valeurs de ces propriétés ne seront pas incluses dans le tableau.

  1. Convertir un tableau d'objets en tableau

En PHP, vous pouvez utiliser des fonctions de rappel pour convertir des tableaux d'objets en tableaux. Voici un exemple :

class Person {
  public $name;
  public $age;

  public function __construct($name, $age) {
    $this->name = $name;
    $this->age = $age;
  }
}

$persons = array(
  new Person("Tom", 20),
  new Person("Jerry", 22),
  new Person("Alice", 18)
);

$array = array_map(function($person) {
  return (array) $person;
}, $persons);

print_r($array);

Le résultat est :

Array
(
    [0] => Array
        (
            [name] => Tom
            [age] => 20
        )

    [1] => Array
        (
            [name] => Jerry
            [age] => 22
        )

    [2] => Array
        (
            [name] => Alice
            [age] => 18
        )
)

Dans cet exemple, nous définissons d'abord une classe Person, qui a deux attributs : nom et âge. Ensuite, nous créons un tableau d'objets $persons qui contient trois instances de Person. Ensuite, nous utilisons la fonction array_map() pour convertir chaque instance de Person en tableau, ce qui donne un nouveau tableau.

Il est important de noter que puisque chaque instance de Person sera convertie en tableau, chaque élément de chaque tableau d'objets sera également un tableau.

Conclusion

En PHP, la conversion d'un objet en un tableau ou un tableau d'objets est une opération courante et peut rendre le code plus pratique et concis. Nous pouvons utiliser des transtypages ou des fonctions de rappel pour implémenter ces opérations de conversion. Notez que les objets dotés de propriétés privées ou protégées peuvent ne pas être entièrement convertis en tableaux.

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