Heim >Backend-Entwicklung >PHP-Tutorial >Was nützt new StdClass() in PHP?
Die Rolle von new StdClass() in PHP: new StdClass() kann verwendet werden, um ein leeres Objekt ohne Mitgliedsmethoden zu erstellen. Die Syntax lautet: [$object = new StdClass();]. Die StdClass-Klasse verfügt weder über Mitgliedsmethoden noch über Mitgliedseigenschaften.
stdClass
ist eine Basisklasse von PHP. Fast alle Klassen erben diese Klasse, sodass sie jederzeit neu sein kann, wodurch diese Variable zu einem Objekt wird . Gleichzeitig verfügt stdClass nach der Instanziierung über keine Eigenschaften und Methoden, dh es handelt sich um ein leeres Objekt.
PHP kann $object = new StdClass();
verwenden, um ein leeres Objekt ohne Mitgliedsmethoden und -eigenschaften zu erstellen.
Oft legen Programmierer einige Informationen wie Parameterkonfigurationselemente zur Verwendung in Arrays fest, aber Array-Operationen sind nicht sehr praktisch. Oft werden Objektoperatoren->xxx anstelle von Array-Operationen verwendet. 'xxx'] ist viel praktischer. Sie müssen also ein leeres Objekt erstellen, um die erforderlichen Attributnamen und Attributwerte im Objekt zu speichern.
Allerdings gibt es in PHP keine Syntax wie var object = {};
in Javascript.
Es gibt mindestens drei Möglichkeiten, ein leeres Objekt in PHP zu erstellen
Methode 1: Schreiben Sie eine leere Klasse
Es kann die Aufgabe kaum erledigen , aber das Muster hat nichts Besonderes.
<?php class cfg { } $cfg = new cfg; $cfg->dbhost = 'www.php.cn'; echo $cfg->dbhost; ?>
Methode 2: Instanziieren Sie die StdClass-Klasse
Die StdClass-Klasse ist eine Basisklasse in PHP. Was jedoch seltsam ist, ist, dass es fast keine Erwähnung gibt davon im PHP-Handbuch. Wenn Sie diese Klasse jemals gesehen haben, können Sie sie zumindest im PHP-Index nicht finden.
Die StdClass-Klasse verfügt über keine Mitgliedsmethoden oder Mitgliedsattribute. Nach der Instanziierung ist sie ein leeres Objekt.
<?php $cfg = new StdClass(); $cfg->dbhost = 'www.php.cn'; echo $cfg->dbhost; ?>
Methode 3: Werfen Sie json_encode() und json_decode() weg
Diese Methode besteht darin, ein leeres JSON-Objekt über json_decode()
StdClass leeres Objekt in PHP zu konvertieren .
Aus dem gleichen Grund können Sie ein Array über json_encode()
in JSON konvertieren und dann über json_decode()
<?php $cfg = json_decode('{}'); $cfg->dbhost = 'www.php.cn'; echo $cfg->dbhost; ?>Weitere Informationen zu diesem Thema finden Sie auf der
PHP-Website für Chinesisch! !
Das obige ist der detaillierte Inhalt vonWas nützt new StdClass() in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!