tableau d'objets php en tableau

王林
Libérer: 2023-05-23 13:29:38
original
528 Les gens l'ont consulté

En PHP, Object et Array sont deux types de données différents. Cependant, dans le développement réel, nous devons généralement convertir les objets en tableaux pour faciliter le traitement et le transfert des données. Cet article explique comment convertir un tableau d'objets (Object Array) en PHP en un tableau de base (Basic Array).

1. Que sont les tableaux d'objets et les tableaux de base

En PHP, un objet (Objet) est généralement instancié à partir d'une classe (Classe). Il a ses propres propriétés (Propriété) et méthodes (Méthode), qui peuvent être diverses opérations. et le traitement. Un tableau est une structure de données qui peut contenir plusieurs valeurs et qui est accessible et traitée à l'aide de paires clé-valeur.

Object Array est un tableau composé de plusieurs objets. Par exemple, nous pouvons définir plusieurs objets étudiants et les stocker dans un tableau :

class Student {
  public $name;
  public $age;
}

$stu1 = new Student;
$stu1->name = "Tom";
$stu1->age = 18;

$stu2 = new Student;
$stu2->name = "Jerry";
$stu2->age = 19;

$students = array($stu1, $stu2);
Copier après la connexion

Basic Array est un tableau composé de valeurs simples​​ou de chaînes. Par exemple, nous pouvons définir un tableau composé de plusieurs nombres :

$numbers = array(1, 2, 3, 4, 5);
Copier après la connexion

2. Méthode de conversion de tableau d'objets

En PHP, nous pouvons utiliser diverses méthodes pour convertir un tableau d'objets en un tableau de base. Voici deux méthodes couramment utilisées. : méthode.

  1. Casting

En PHP, nous pouvons utiliser le transtypage pour convertir un tableau d'objets en un tableau de base. La méthode d'implémentation spécifique est la suivante :

$basicArray = (array) $objectArray;
Copier après la connexion

Par exemple, la conversion du tableau d'objets étudiant ci-dessus en un tableau de base peut être implémentée comme suit :

$basicStudents = (array) $students;
Copier après la connexion

À l'heure actuelle, $basicStudents est un tableau de base et son contenu est le suivant :

Array(
  [0] => Student Object
    (
        [name] => Tom
        [age] => 18
    )

  [1] => Student Object
    (
        [name] => Jerry
        [age] => 19
    )
)
Copier après la connexion

Il convient de noter que, car dans le cast, le nom de l'attribut d'objet sera forcé au nom de la clé, donc dans le tableau sous-jacent converti, le nom de la clé est le nom de l'attribut d'objet.

  1. Utiliser des méthodes objet

En PHP, nous pouvons également utiliser des méthodes objet pour convertir un tableau d'objets en un tableau de base. La méthode d'implémentation spécifique est la suivante :

$basicArray = $objectArray->toArray();
Copier après la connexion

Parmi elles, toArray() est la méthode de conversion définie par l'objet. Par exemple, définir la méthode de conversion pour le tableau d'objets étudiant ci-dessus et le convertir peut être implémenté comme ceci :

class Student {
  public $name;
  public $age;

  public function toArray() {
    return array(
      'name' => $this->name,
      'age' => $this->age
    );
  }
}

$stu1 = new Student;
$stu1->name = "Tom";
$stu1->age = 18;

$stu2 = new Student;
$stu2->name = "Jerry";
$stu2->age = 19;

$students = array($stu1, $stu2);

$basicStudents = array();
foreach ($students as $student) {
  $basicStudents[] = $student->toArray();
}
Copier après la connexion

À l'heure actuelle, $basicStudents est un tableau de base, et son contenu est le suivant :

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

  [1] => Array
    (
      [name] => Jerry
      [age] => 19
  )
)
Copier après la connexion

Depuis toArray( ) convertit les attributs de l'objet en paires clé-valeur, donc dans le tableau sous-jacent converti, le nom de la clé est le nom de la propriété de l'objet.

3. Résumé

En PHP, nous pouvons utiliser des méthodes cast ou object pour convertir un tableau d'objets en un tableau de base. En fonction des besoins réels et de la complexité de l'implémentation du code, la méthode de conversion correspondante peut être sélectionnée. Il convient de noter que dans le tableau de base converti, la définition des noms de clé et des valeurs de clé est liée à la définition des propriétés de l'objet, la mise en œuvre de la méthode de conversion doit donc être soigneusement étudiée.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal