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

Comment lire un tableau d'objets en php

PHPz
PHPzoriginal
2023-04-23 10:06:51806parcourir

Le tableau d'objets fait référence à un tableau composé de plusieurs objets. Contrairement aux tableaux numériques généraux, les tableaux d'objets sont des tableaux composés de références d'objets. En PHP, il existe plusieurs façons de lire un tableau d'objets.

1. Utilisez la boucle foreach pour parcourir un tableau d'objets

L'utilisation d'une boucle foreach pour parcourir un tableau d'objets est l'une des méthodes les plus courantes. L'exemple de code est le suivant :

class User {
    public $id;
    public $name;
    public $email;
}

$user1 = new User();
$user1->id = 1;
$user1->name = "John";
$user1->email = "john@example.com";

$user2 = new User();
$user2->id = 2;
$user2->name = "Smith";
$user2->email = "smith@example.com";

$users = array($user1, $user2);

foreach ($users as $user) {
    echo $user->id . " | " . $user->name . " | " . $user->email . "<br>";
}

Dans l'exemple ci-dessus, nous avons créé la classe User et instancié deux objets $user1 et $user2, puis ajouté ces deux objets à un tableau d'objets $users. Ensuite, utilisez une boucle foreach pour parcourir $users, stocker chaque objet dans la variable $user et afficher la valeur d'attribut de l'objet.

2. Utilisez la boucle for pour parcourir un tableau d'objets

En plus d'utiliser la boucle foreach, vous pouvez également utiliser la boucle for pour parcourir un tableau d'objets. L'exemple de code est le suivant :

class User {
    public $id;
    public $name;
    public $email;
}

$user1 = new User();
$user1->id = 1;
$user1->name = "John";
$user1->email = "john@example.com";

$user2 = new User();
$user2->id = 2;
$user2->name = "Smith";
$user2->email = "smith@example.com";

$users = array($user1, $user2);

for ($i = 0; $i < count($users); $i++) {
    echo $users[$i]->id . " | " . $users[$i]->name . " | " . $users[$i]->email . "<br>";
}

Dans l'exemple ci-dessus, nous avons créé la classe User et instancié deux objets $user1 et $user2, puis ajouté ces deux objets à un tableau d'objets $users. Ensuite, utilisez une boucle for pour parcourir $users et afficher les valeurs d'attribut de l'objet.

3. Utilisez la fonction array_map pour convertir un tableau d'objets en tableau

En plus d'utiliser une boucle pour parcourir le tableau d'objets, vous pouvez également utiliser la fonction array_map pour convertir un tableau d'objets en un tableau normal. L'exemple de code est le suivant :

class User {
    public $id;
    public $name;
    public $email;
}

$user1 = new User();
$user1->id = 1;
$user1->name = "John";
$user1->email = "john@example.com";

$user2 = new User();
$user2->id = 2;
$user2->name = "Smith";
$user2->email = "smith@example.com";

$users = array($user1, $user2);

$array_users = array_map(function($user) {
    return (array)$user;
}, $users);

foreach ($array_users as $user) {
    echo $user['id'] . " | " . $user['name'] . " | " . $user['email'] . "<br>";
}

Dans l'exemple ci-dessus, nous avons créé la classe User et instancié deux objets $user1 et $user2, puis ajouté ces deux objets à un tableau d'objets $users. Convertissez chaque objet en tableau à l'aide de la fonction array_map et affectez-le à un nouveau tableau $array_users. Enfin, utilisez une boucle foreach pour parcourir $array_users et afficher les valeurs des éléments du tableau.

Résumé :

Voici plusieurs méthodes courantes pour lire des tableaux d'objets en PHP. Utiliser une boucle pour parcourir un tableau d'objets est l'une des méthodes les plus courantes, mais dans certains cas, vous pouvez utiliser la fonction array_map pour convertir un tableau d'objets en un tableau normal. Différentes méthodes conviennent à différents scénarios.

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