Dieser Artikel stellt hauptsächlich die Verwendung von stdClass in PHP vor. Er hat einen gewissen Referenzwert.
Dieser Artikel analysiert stdClass in PHP mit Beispielen.
Die spezifische Analyse lautet wie folgt:
stdclass ist eine von mehreren vordefinierten Klassen in PHP und eine von zent reservierte Klasse. Tatsächlich handelt es sich um eine von PHP bereitgestellte Basisklasse, bei der es sich um eine leere Klasse ohne Inhalt handelt. Wir können sie instanziieren, dann eine Reihe von Variablen definieren und Variablen durch sie weiterleiten (viele PHP-Programmierer verwenden sie, um die Werte zu übergeben). einer Reihe von Variablen, ohne sich die Mühe zu machen, eine eigene Klasse zu erstellen). Da jedoch nach der Instanziierung keine Methoden hinzugefügt werden können, können nur Eigenschaften übergeben werden. Denn sobald eine Klasse instanziiert ist, können keine Methoden mehr hinzugefügt werden.
stdclass kann als Basisklasse verwendet werden. Sein größtes Merkmal besteht darin, dass (seine abgeleiteten Klassen) automatisch Mitgliedsvariablen hinzufügen können, ohne dass diese beim Definieren angegeben werden müssen.
Alle PHP-Variablen sind Instanzen von stdClass.
Verwendung:
1. Verwenden Sie stdclass:
$andy = array(); $andy = (object)$andy; $andy->a = 1; $andy->b = 2; $andy->c = 3;
Auf diese Weise werden die Mengen a, b und c in stdclass gefüllt. Das erspart Ärger, denn zum Erstellen eines leeren Objekts ist $andy = new Andy; erforderlich und es muss zuerst eine Klasse Andy{} vorhanden sein. Ein weiteres Beispiel:
<?php $a = new stdClass(); $a->id = '11 '; $a->username = 'me'; print_r($a); ?>
gibt Folgendes aus: stdClass Object ( [id] => 11 [username] => me ).
Oft wird diese Methode verwendet, um die Verwendung von Arrays zu ersetzen, was lediglich eine Änderung der Syntax darstellt.
2. Lesen Sie:
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日 阴转阵雨 ) ) )
Tatsächlich ähnelt es dem Array, aber die Zugriffsmethode unterscheidet sich ein wenig. Wir sind es im Allgemeinen gewohnt, Array['key'] zu verwenden, um auf Arrays zuzugreifen.
Für diese Art von stdClass, wie im obigen Beispiel, kann $weather->getWeatherbyCityNameResult->string[0] wie folgt auf das Attribut zugreifen, und das Ergebnis ist „Sichuan“.
3. Instanziierung, neu.
Vergleichen Sie diese beiden Codes:
<?php $a = array(1=>2,2=>3); $a = (object)$a; $a->id = '11 '; $a->username = 'me'; print_r($a); ?>
gibt Folgendes aus: stdClass Object ( [1] => 2 [2] => 3 [id] => 11 [Benutzername] = > ; Mich ).
<?php $a = array(1=>2,2=>3); $a = (object)$a; $a = new stdClass(); $a->id = '11 '; $a->username = 'me'; print_r($a); ?>
gibt Folgendes aus: stdClass Object ( [id] => 11 [username] => me ) .
Es stellt sich heraus, dass nach der Instanziierung mit new das vorherige Array gelöscht wird und nur die später hinzugefügten übrig bleiben. Wenn es nicht instanziiert wird, behält stdClass alle Elemente bei.
Es ist zu beachten, dass bei der Verwendung von global oder static in einer Funktion und der Referenz auf die neue Standardklasse &new stdclass ungültig ist. Sie sollten die Verwendung von Referenzen vermeiden und die neue Standardklasse direkt verwenden.
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:
PHP-Klasse für reguläre Ausdrücke zur Implementierung der UBB-Codefilterung
So verwenden Sie den Online-Code-Editor für die PHP-Einzeldateiversion
Das obige ist der detaillierte Inhalt vonDetaillierte grafische Erklärung der Verwendung von stdClass in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!