Crea un oggetto senza classe in PHP

Subodh Poudel 8 luglio 2021
  1. Usa new stdClass() per creare un oggetto senza una classe in PHP
  2. Digita un array in un oggetto usando il tipo di dati object per creare un oggetto senza creare una classe
  3. Usa la funzione json_dencode() per creare un oggetto senza creare una classe in PHP
Crea un oggetto senza classe in PHP

Questo articolo introdurrà i metodi per creare un oggetto senza creare una classe in PHP.

Usa new stdClass() per creare un oggetto senza una classe in PHP

Possiamo creare un oggetto dalla stdClass() senza creare una classe base in PHP. Possiamo usare l’operatore new per creare un oggetto della stdClass(). L’oggetto può accedere direttamente alle proprietà chiamandole. Pertanto, possiamo creare oggetti e proprietà dinamici utilizzando la stdClass(). Il compilatore crea un’istanza di stdClass() quando un array viene typecast su un oggetto.

Ad esempio, creare una variabile $oggetto e memorizzare un’istanza della stdClass() creata dall’operatore new. Chiama una variabile property dall’oggetto $oggetto e assegna una stringa. Assegna la stringa I am an object's property. Usa la barra rovesciata \ per evitare l’apostrofo nel testo. Applicare la funzione var_dump() sulla variabile $object per scaricare le informazioni sulla variabile.

Nell’esempio seguente, abbiamo creato un oggetto della stdClass(), e abbiamo immediatamente assegnato un valore alla proprietà dell’oggetto. Quando scarichiamo l’oggetto, vedremo l’oggetto della classe stdClass creato nell’output. Quindi, possiamo creare un oggetto senza creare una classe base in PHP.

Codice di esempio:

#php 7.x
<?php
$object = new stdClass();
$object->property = 'I am an object\'s property';
var_dump($object);
?>

Produzione:

object(stdClass)#1 (1) { ["property"]=> string(25) "I am an object's property" }

Digita un array in un oggetto usando il tipo di dati object per creare un oggetto senza creare una classe

Possiamo creare un oggetto senza creare una classe in PHP, digitando un tipo in un oggetto utilizzando il tipo di dati object. Possiamo digitare un array in un oggetto stdClass. La parola chiave object è racchiusa tra parentesi subito prima che l’array scriva l’array nell’oggetto. Possiamo usare la funzione var_dump() come primo metodo per vedere le informazioni sull’oggetto typecast.

Ad esempio, crea una variabile $place e memorizza un array in essa. L’array contiene chiavi come city e country e i rispettivi valori come Pokhara e Nepal. Assegna la variabile $place a una nuova variabile $obj. Scrivi il tipo di dati object racchiuso tra parentesi appena prima della variabile $place. Chiama la funzione var_dump() con il parametro $obj.

L’esempio seguente converte un array in un oggetto. La funzione var_dump() mostra l’oggetto $obj nella sezione di output. Mostra che è un oggetto stdClass. Consulta il Manuale PHP per sapere come funziona il typecasting.

Esempio di codice:

#php 7.x
<?php
$place = ['city' => 'Pokhara', 'country' =>'Nepal'];
$obj = (object) $place;
var_dump($obj);
?>

Produzione:

object(stdClass)#1 (2) { ["city"]=> string(7) "Pokhara" ["country"]=> string(5) "Nepal" }

Usa la funzione json_dencode() per creare un oggetto senza creare una classe in PHP

La funzione json_decode() converte la stringa JSON in un oggetto PHP. La funzione accetta un parametro stringa che verrà convertito in un oggetto. La funzione accetta anche un parametro booleano opzionale. Il valore predefinito di questo parametro booleano è false, che convertirà l’oggetto JSON in un oggetto PHP. Se il valore è true, convertirà l’oggetto JSON in un array associativo.

Ad esempio, crea una variabile $jsonobj e memorizza un oggetto JSON in essa. L’oggetto contiene Harry, Tony e Juan come chiave e i valori interi 27, 24 e 32 come rispettivi valori. Le coppie chiave-valore sono racchiuse tra parentesi graffe. L’oggetto JSON è racchiuso tra virgolette come stringa. Quindi usa la funzione json_decode() sulle variabili $jsonobj. Applicare la funzione var_dump() alla funzione json_encode() per visualizzare le informazioni sull’oggetto codificato.

Nell’esempio seguente, la funzione json_encode() converte l’oggetto JSON nell’oggetto PHP di stdClass. La funzione var_dump() mostra la proprietà e il valore dell’oggetto. Pertanto, abbiamo creato un oggetto senza creare una classe in PHP. Visualizza anche il tipo del valore. Si prega di controllare il Manuale PHP per saperne di più sulla funzione json_decode().

Codice di esempio:

# php 7.x
<?php
$jsonobj = '{"Harry":27,"Tony":24,"Juan":32}';
var_dump(json_decode($jsonobj));
?>

Produzione:

object(stdClass)#1 (3) { ["Harry"]=> int(27) ["Tony"]=> int(24) ["Juan"]=> int(32) }
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn

Articolo correlato - PHP Object