Comment mettre un tableau dans un objet php

WBOY
Libérer: 2023-05-11 10:42:07
original
649 Les gens l'ont consulté

Dans les objets PHP, les propriétés et les méthodes peuvent être stockées via des tableaux. Les objets sont définis par des classes, qui sont des collections de propriétés et de méthodes. En PHP, les propriétés et méthodes d'un objet sont accessibles via le nom de l'objet et un symbole de flèche (->). Alors, comment les objets PHP placent-ils des tableaux ? Apprenons-le étape par étape.

  1. Création d'objets et de tableaux

Tout d'abord, nous devons créer un objet et un tableau afin de stocker le tableau dans l'objet. Le code suivant créera un objet nommé « personne » et un tableau nommé « personne_info ».

//创建person对象
$person = new stdClass();

//创建person_info数组
$person_info = array(
    'name' => '张三',
    'age' => 25,
    'gender' => '男'
);
Copier après la connexion
  1. Attribuer le tableau aux propriétés de l'objet

Ensuite, nous pouvons attribuer le tableau aux propriétés de l'objet. En PHP, les propriétés d'un objet peuvent être publiques, protégées ou privées, et on peut les définir à l'aide des modificateurs d'accès correspondants.

//将person_info数组赋给person对象的属性
$person->info = $person_info;
Copier après la connexion

À l'heure actuelle, l'attribut "info" de l'objet $person est un tableau contenant des paires clé-valeur de "nom", "âge" et "sexe".

  1. Accès au tableau dans l'objet

Nous pouvons accéder au tableau dans l'objet en utilisant le nom de la propriété de l'objet et le symbole de la flèche. Le code suivant montre comment accéder à la propriété « name » dans l'objet $person.

echo $person->info['name']; //输出"张三"
Copier après la connexion

Notez que nous devons utiliser le symbole d'accès au tableau "[]" pour accéder aux propriétés de l'objet, pas le symbole d'opération point "."

    #🎜🎜 #Utiliser des méthodes d'objets pour faire fonctionner des tableaux
Nous pouvons également définir des méthodes dans des objets pour faire fonctionner des tableaux. Le code ci-dessous montre comment définir une méthode dans un objet pour obtenir le nombre de personnes âgées de 18 ans et plus.

class Person {
    public $info;
    
    public function getAdultCount() {
        $count = 0;
        foreach($this->info as $item) {
            if($item['age'] >= 18) {
                $count++;
            }
        }
        return $count;
    }
}

$person = new Person();
$person->info = array(
    array('name'=>'张三', 'age'=>25, 'gender'=>'男'),
    array('name'=>'李四', 'age'=>16, 'gender'=>'女'),
    array('name'=>'王五', 'age'=>21, 'gender'=>'男'),
);

echo $person->getAdultCount(); //输出"2"
Copier après la connexion
Dans le code ci-dessus, nous définissons une méthode nommée "getAdultCount", dans laquelle elle parcourt chaque élément de l'attribut "info" de l'objet $person Si son âge est supérieur à S'il l'est. égal à 18 ans, un compteur sera ajouté. Enfin, la valeur du compteur est renvoyée.

De cette façon, nous pouvons utiliser des tableaux dans des objets et définir les méthodes correspondantes pour les utiliser.

Résumé

Dans les objets PHP, nous pouvons stocker des propriétés et des méthodes via des tableaux. Nous devons créer un objet et un tableau et attribuer le tableau aux propriétés de l'objet. Nous pouvons accéder au tableau dans l'objet en utilisant le nom des propriétés de l'objet et les symboles fléchés, ou nous pouvons définir des méthodes dans l'objet pour opérer sur le tableau. De cette façon, nous pouvons utiliser les tableaux en PHP de manière plus flexible et plus pratique.

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