Maison > php教程 > PHP开发 > le corps du texte

Exemple d'analyse de l'utilisation de STDCLASS en PHP

高洛峰
Libérer: 2016-12-21 14:31:41
original
1106 Les gens l'ont consulté

L'exemple de cet article décrit l'utilisation de STDCLASS en PHP. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :

STDCLASS en PHP n'est pas beaucoup utilisé dans nos applications de développement, mais STDCLASS en PHP est très important. .

StdClass est utilisé à de nombreux endroits dans WordPress pour définir un objet (généralement sous la forme d'un tableau), puis utiliser get_object_vars pour "convertir" l'objet défini en tableau.

Comme suit Le code est affiché :

$tanteng = new stdClass();
$tanteng->name = 'tanteng';
$tanteng->email = 'xxx@qq.com';
$info = get_object_vars($tanteng);
print_r($info);
exit;
Copier après la connexion

Sortie :

Array ( [name] => tanteng [email] => xxx@qq.com )
Copier après la connexion

La fonction de get_object_vars est pour renvoyer les propriétés de l'objet Un tableau associatif composé de. Son effet est en fait le même que la définition d'un tableau comme ceci :

$tanteng = array();
$tanteng['name'] = 'tanteng';
$tanteng['email'] = 'xxx@qq.com';
Copier après la connexion

Cela peut être compris comme ceci : stdClass est une classe intégrée, qui n'a pas de variables membres ni de membres méthodes. Un nouveau stdClass instancie un objet "vide". Il n'a aucune signification en soi, mais quels sont les avantages d'utiliser stdClass pour le définir

Le code suivant :

$user = new stdClass();
$user->name = 'gouki';
$user->hehe = 'hehe';
$myUser = $user;
$myUser->name = 'flypig';
print_r($user);
print_r($myUser);
print_r($user);
Copier après la connexion

Ici, $myUser se voit attribuer la valeur $user, mais en fait, il n'y a pas de nouvelle variable de stockage en mémoire, $myUser fait toujours référence à l'objet stdClass. La modification de la page de propriétés via les modifications de $myUser. les propriétés de $user, et au lieu de créer une nouvelle copie, s'il existe de nombreuses opérations de ce type dans le programme, l'utilisation de stdClass peut économiser de la mémoire.

Résultats en cours d'exécution :

stdClass Object
(
  [name] => flypig
  [hehe] => hehe
)
stdClass Object
(
  [name] => flypig
  [hehe] => hehe
)
stdClass Object
(
  [name] => flypig
  [hehe] => hehe
)
Copier après la connexion

Comme peut être vu à partir des résultats, en changeant $myUser L'attribut modifie l'attribut stdClass déclaré par $user, et si $user est un tableau et est affecté à $myUser, alors une copie est copiée dans $myUser, ce qui augmente la surcharge du système.

Bien sûr, vous pouvez aussi faire l'inverse et convertir un tableau en objet :

$hehe['he1'] = 'he1';
$hehe['he2'] = 'he2';
$hh = (object) $hehe;
print_r($hh);
Copier après la connexion

Imprimer le résultat :

stdClass Object ( [he1] => he1 [he2] => he2 )
Copier après la connexion

J'espère que cela l'article sera utile à tout le monde dans la programmation PHP.

Pour plus d'articles liés à l'analyse d'exemples d'utilisation de STDCLASS en PHP, veuillez faire attention au site Web PHP chinois !


Étiquettes associées:
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
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!