Salut, j'essaie de fusionner deux tableaux et je souhaite également supprimer les valeurs en double du tableau final.
Voici mon tableau 1:
Array
(
[0] => stdClass Object
(
[ID] => 749
[post_author] => 1
[post_date] => 2012-11-20 06:26:07
[post_date_gmt] => 2012-11-20 06:26:07
)
Et voici mon tableau 2:
Array
(
[0] => stdClass Object
(
[ID] => 749
[post_author] => 1
[post_date] => 2012-11-20 06:26:07
[post_date_gmt] => 2012-11-20 06:26:07
)
J'utilise array_merge
pour fusionner les deux tableaux en un seul tableau. il donne une sortie comme celle-ci
Array
(
[0] => stdClass Object
(
[ID] => 749
[post_author] => 1
[post_date] => 2012-11-20 06:26:07
[post_date_gmt] => 2012-11-20 06:26:07
[1] => stdClass Object
(
[ID] => 749
[post_author] => 1
[post_date] => 2012-11-20 06:26:07
[post_date_gmt] => 2012-11-20 06:26:07
)
Je veux supprimer ces entrées en double ou puis-je les supprimer avant de fusionner ... Veuillez aider .. Merci !!!!!!!
Réponses:
http://se2.php.net/manual/en/function.array-unique.php
la source
Catchable fatal error: Object of class stdClass could not be converted to string
SORT_REGULAR
cela donneRecoverable fatal error: Object of class stdClass could not be converted to string in...<path to file>
Il fusionnera deux tableaux et supprimera les doublons
Essayez ce lien link1
la source
Comme déjà mentionné, array_unique () pourrait être utilisé, mais uniquement lorsqu'il s'agit de données simples. Les objets ne sont pas si simples à manipuler.
Lorsque php essaie de fusionner les tableaux, il essaie de comparer les valeurs des membres du tableau. Si un membre est un objet, il ne peut pas obtenir sa valeur et utilise le hachage spl à la place. En savoir plus sur spl_object_hash ici.
Simplement dit si vous avez deux objets, des instances de la même classe et si l'un d'eux n'est pas une référence à l'autre - vous finirez par avoir deux objets, quelle que soit la valeur de leurs propriétés.
Pour être sûr que vous n'avez pas de doublons dans le tableau fusionné, Imho vous devez gérer le cas vous-même.
De plus, si vous envisagez de fusionner des tableaux multidimensionnels, envisagez d'utiliser array_merge_recursive () sur array_merge () .
la source
essayez d'utiliser le
array_unique()
cela élimine les données dupliquées dans la liste de vos tableaux.
la source
La fusion de deux tableaux ne supprimera pas le doublon, vous pouvez essayer l'exemple ci-dessous pour obtenir l'unicité de deux tableaux
la source