Come unire gli oggetti in PHP

Come unire gli oggetti in PHP
Sebbene non vi sia alcuna funzione integrata, ci sono diversi modi per unire gli oggetti in PHP. Ad esempio, un nuovo oggetto può essere creato aggiungendo le proprietà di due o più oggetti usando un loop. In alternativa, gli oggetti richiesti possono essere convertiti in array, che possono essere uniti utilizzando Array_merge () O Array_merge_recursily (), e poi riconvertito a un oggetto.

In questo tutorial, ti mostreremo come utilizzare i metodi sopra per unire gli oggetti in PHP.

Esempio 1: unisci gli oggetti usando un loop per

Per seguire questo tutorial, crea un file PHP con il seguente script. Qui, un Account La classe è dichiarata. Account contiene un Schermo() Metodo per stampare i valori degli oggetti assegnati della classe. L'usanza Merge_Object () la funzione è dichiarata per unire due oggetti del Account classe usando un ciclo per. Due per i loop vengono utilizzati per unire i valori degli oggetti e archiviarli in un altro oggetto del Account classe. IL $ ACC_OBJ1 L'oggetto viene utilizzato per assegnare tre valori di proprietà del Account classe e il $ ACC_OBJ2 L'oggetto viene utilizzato per assegnare due valori di proprietà. Queste variabili saranno passate come argomenti al Merge_Object () funzione.

// Definisci la classe
Account di classe
Display della funzione pubblica ($ oggetto)

eco " Nome: ".$ oggetto-> Nome."
";
eco " E-mail: ".$ oggetto-> email."
";
eco " Tipo di account: ".$ Object-> ACC_TYPE."
";
eco " Equilibrio aperto: ".$ Object-> Openning_Balance."
";
eco " Bilancio corrente: ".$ oggetto-> Current_Balance;


// Definisci la funzione per unire gli oggetti
funzione marge_object ($ object1, $ object2)
// crea un nuovo oggetto della classe
$ merge_object = new Account ();
// Assegna i valori del primo oggetto in nuovo oggetto
foreach ($ object1 come $ proprietà => $ value)
$ merge_object-> $ proprietà = $ value;

// Aggiungi i valori del secondo oggetto in nuovo oggetto
foreach ($ object2 come $ proprietà => $ value)
$ merge_object-> $ proprietà = $ value;

eco " I valori dell'oggetto unita:

";
// Chiama la funzione per stampare i valori dell'oggetto unito
$ MERGE_OBJECT-> Display ($ MERGE_OBJECT);

// Crea il primo oggetto e assegna i valori delle proprietà
$ ACC_OBJ1 = new Account ();
$ ACC_OBJ1-> name = "mahmudul ahsan";
$ ACC_OBJ1-> email = "[email protected] ";
$ ACC_OBJ1-> ACC_TYPE = "Saving";
// crea il secondo oggetto e assegna i valori delle proprietà
$ ACC_OBJ2 = new Account ();
$ ACC_OBJ2-> Openning_Balance = 40000;
$ ACC_OBJ2-> Current_Balance = 50000;
// chiama la funzione per unire entrambi gli oggetti
Merge_Object ($ ACC_OBJ1, $ ACC_OBJ2);
?>

Produzione:

Il seguente output verrà prodotto dopo aver eseguito lo script sopra dal server web. L'output mostra i valori della proprietà della variabile oggetto unita.

Esempio 2: unisci oggetti usando la funzione Array_merge ()

IL Array_merge () La funzione viene utilizzata per unire due o più array. Per seguire questo esempio, crea un file PHP con il seguente script. Qui, il Account La classe viene utilizzata per stampare i valori dell'oggetto unita. Gli oggetti $ ACC_OBJ1 E $ ACC_OBJ2 sono creati nello script. Tre valori di proprietà sono assegnati utilizzando $ ACC_OBJ1 e due valori di proprietà sono assegnati utilizzando $ ACC_OBJ2. Questi due oggetti vengono convertiti in due array e passati come argomenti del Array_merge () funzione. L'output del Array_merge () La funzione viene convertita in un oggetto per ottenere $ Merge_Object. Prossimo, $ Merge_Object è passato come argomento al Schermo() metodo del Account classe.

// Definisci la classe
Account di classe
Display della funzione pubblica ($ oggetto)

eco " Nome: ".$ oggetto-> Nome."
";
eco " E-mail: ".$ oggetto-> email."
";
eco " Tipo di account: ".$ Object-> ACC_TYPE."
";
eco " Equilibrio aperto: ".$ Object-> Openning_Balance."
";
eco " Bilancio corrente: ".$ oggetto-> Current_Balance;


// Crea il primo oggetto e assegna i valori delle proprietà
$ ACC_OBJ1 = new Account ();
$ ACC_OBJ1-> name = "Ferzana Rahman";
$ ACC_OBJ1-> email = "[email protected] ";
$ ACC_OBJ1-> ACC_TYPE = "Current";
// crea il secondo oggetto e assegna i valori delle proprietà
$ ACC_OBJ2 = new Account ();
$ ACC_OBJ2-> Openning_Balance = 500000;
$ ACC_OBJ2-> Current_Balance = 450000;
// unisci gli oggetti usando Array_merge ()
$ merge_object = (oggetto) array_merge ((array) $ ACC_OBJ1, (array) $ ACC_OBJ2);
eco " I valori dell'oggetto unita:

";
foreach ($ merge_object come $ proprietà => $ value)
Echo $ Property. "=>". $ valore. "
";

?>

Produzione:

Il seguente output verrà prodotto eseguendo lo script sopra dal server web. L'output mostra i valori della proprietà della variabile oggetto unita.

Esempio 3: unisci oggetti usando la funzione Array_merge_recursive ()

Gli oggetti possono anche essere uniti utilizzando il integrato array_merge_recursive () funzione, che viene utilizzata per unire gli array nidificati. Pertanto, se un array contiene un altro array al suo interno, questa funzione restituirà un array unita fondendo i valori dell'array nidificato.

Per seguire questo esempio, crea un file PHP con il seguente script. Qui, a Alunno la classe è definita per restituire l'oggetto unito usando il Merge_Objects () metodo. Gli oggetti $ obj1 E $ obj2 sono dichiarati per conservare il id E segni proprietà. IL segni La proprietà contiene un altro oggetto per archiviare i valori delle altre proprietà. Prossimo, $ obj1 E $ obj2 sono passati come argomenti a Merge_Objects (), che usa il array_merge_recursive () funzione.

// Definisci la classe
Studente di classe
// unisci i due oggetti usando Array_merge_recursive ()
Funzione pubblica Merge_Objects ($ Object1, $ Object2)

$ Obj1 = (array) $ object1;
$ Obj2 = (array) $ object2;
$ miscred = array_merge_recursive ($ obj1, $ obj2);
return (oggetto) $ unito;


// Definisci l'oggetto della classe
$ Student = new Student ();
// dichiara il primo oggetto
$ obj1 = (oggetto) [
'id' => '423456',
'marks' => (oggetto) [
'Cse101' => 87
"
];
// dichiara il secondo oggetto
$ obj2 = (oggetto) [
'marks' => (oggetto) [
'Cse204' => 94,
'Cse306' => 75
"
];
// chiama la funzione per unire il primo e i secondi oggetti
$ mEdged_object = $ Student-> Merge_Objects ($ obj1, $ obj2);
// Stampa i valori dell'oggetto unita
eco "
";
print_r ($ mEdged_object);
eco "
";
?>

Produzione:

Il seguente output verrà prodotto eseguendo lo script sopra dal server web. L'output mostra i valori della proprietà della variabile oggetto unita.

Conclusione

In questo tutorial, ti mostriamo tre modi diversi per unire gli oggetti in PHP. Nel primo esempio, gli oggetti vengono uniti usando un ciclo per e negli altri due esempi, vengono utilizzate funzioni integrate per la fusione.