Cet article présente principalement l'utilisation de stdClass en php. Il analyse les fonctions et les techniques d'utilisation de stdClass avec des exemples. Il a une certaine valeur de référence.
Cet article analyse stdClass. en php avec des exemples d'utilisation.
L'analyse spécifique est la suivante :
stdclass est l'une des nombreuses classes prédéfinies en PHP et est une classe réservée par zent. En fait, il s'agit d'une classe de base fournie par PHP, qui est une classe vide sans rien dedans. Nous pouvons l'instancier, puis définir une série de variables et y transmettre des variables (de nombreux programmeurs PHP l'utilisent pour transmettre les valeurs d'une série de variables sans prendre la peine de créer votre propre classe). Cependant, comme les méthodes ne peuvent pas être ajoutées après l'instanciation, seules les propriétés peuvent être transmises. Car une fois qu’une classe est instanciée, les méthodes ne peuvent plus être ajoutées.
stdclass peut être utilisé comme classe de base. Sa plus grande fonctionnalité est que (ses classes dérivées) peuvent ajouter automatiquement des variables membres sans avoir besoin de les spécifier lors de la définition.
Toutes les variables php sont des instances de stdClass.
Utilisation :
1. Utilisez stdclass :
$andy = array(); $andy = (object)$andy; $andy->a = 1; $andy->b = 2; $andy->c = 3;
De cette façon, les quantités a, b et c sont renseignées dans stdclass. Cela évite des problèmes, car pour créer un objet vide, il faut $andy = new Andy; et il doit d'abord y avoir une classe Andy{}. Un autre exemple :
<?php $a = new stdClass(); $a->id = '11 '; $a->username = 'me'; print_r($a); ?>
affichera : stdClass Object ( [id] => 11 [username] => me ).
Souvent, cette méthode est utilisée pour remplacer l'utilisation de tableaux, ce qui n'est qu'un changement de syntaxe.
2. Lecture :
stdClass Object ( [getWeatherbyCityNameResult] => stdClass Object ( [string] => Array ( [0] => 四川 [1] => 成都 [2] => 56294 [3] => 56294.jpg [4] => 2009-5-17 13:52:08 [5] => 26℃/19℃ [6] => 5月17日 阴转阵雨 ) ) )
En fait, c'est similaire à array, mais la méthode d'accès change un peu Nous sommes généralement habitués à utiliser array['key'] pour accéder. tableaux.
Pour ce type de stdClass, comme dans l'exemple ci-dessus, $weather->getWeatherbyCityNameResult->string[0] peut accéder à l'attribut comme ceci, et le résultat sera "Sichuan".
3. Instanciation, nouveau.
Comparez ces deux codes :
<?php $a = array(1=>2,2=>3); $a = (object)$a; $a->id = '11 '; $a->username = 'me'; print_r($a); ?>
affichera : stdClass Object ( [1] => 2 [2] => 3 [id] => 11 [username ] => moi).
<?php $a = array(1=>2,2=>3); $a = (object)$a; $a = new stdClass(); $a->id = '11 '; $a->username = 'me'; print_r($a); ?>
affichera : stdClass Object ( [id] => 11 [username] => me ) .
Il s'avère qu'après l'instanciation avec new, le tableau précédent est effacé, ne laissant que ceux ajoutés plus tard. S'il n'est pas instancié, stdClass conservera tous les éléments.
Il convient de noter que lors de l'utilisation de global ou static dans une fonction et qu'une nouvelle classe std est référencée, &new stdclass sera invalide. Vous devez éviter d'utiliser des références et utiliser directement la nouvelle classe std.
Résumé : Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.
Recommandations associées :
Comment implémenter des informations d'invite à l'aide de la fonction d'alerte personnalisée de PHP
Classe d'expression régulière PHP pour implémenter le filtrage de code UBB
Comment utiliser l'éditeur de code en ligne version fichier unique php
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!