Maison > développement back-end > tutoriel php > Comment fusionner efficacement deux objets PHP non liés ?

Comment fusionner efficacement deux objets PHP non liés ?

Linda Hamilton
Libérer: 2024-11-30 03:14:15
original
261 Les gens l'ont consulté

How to Efficiently Merge Two Unrelated PHP Objects?

Comment fusionner deux objets PHP distincts

Nous avons deux objets PHP que nous souhaitons fusionner, mais ce ne sont pas des sous-classes l'un de l'autre. Nous avons besoin d'une méthode efficace qui évite d'utiliser des boucles lentes.

Solution

Si les objets ne contiennent que des champs, nous pouvons utiliser cette méthode pour les fusionner dans un nouvel objet :

$obj_merged = (object) array_merge((array) $obj1, (array) $obj2);
Copier après la connexion

Cela fonctionne en convertissant les objets en tableaux, en fusionnant les tableaux à l'aide de la fonction array_merge(), puis en reconvertissant le tableau fusionné en un objet.

Exemple

$objectA->a;
$objectA->b;
$objectB->c;
$objectB->d;

// Merge the objects
$objectC = (object) array_merge((array) $objectA, (array) $objectB);

// Verify the merged object
echo $objectC->a; // Output: Value of a from objectA
echo $objectC->b; // Output: Value of b from objectA
echo $objectC->c; // Output: Value of c from objectB
echo $objectC->d; // Output: Value of d from objectB
Copier après la connexion

Cette méthode fonctionne également si les objets ont des méthodes, bien que cela n'ait pas été testé de manière exhaustive.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal