Hola, estoy tratando de fusionar dos matrices y también quiero eliminar valores duplicados de la matriz final.
Aquí está mi Array 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
)
Y esta es mi matriz 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
)
Estoy usando array_merge
para fusionar ambas matrices en una matriz. está dando una salida como esta
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
)
Quiero eliminar estas entradas duplicadas o puedo eliminarlas antes de fusionarlas ... Por favor, ayúdenme ... ¡¡¡¡¡Gracias !!!!!!!
Respuestas:
http://se2.php.net/manual/en/function.array-unique.php
fuente
Catchable fatal error: Object of class stdClass could not be converted to string
SORT_REGULAR
, daRecoverable fatal error: Object of class stdClass could not be converted to string in...<path to file>
Fusionará dos matrices y eliminará el duplicado
Prueba este enlace link1
fuente
Como ya se mencionó, array_unique () podría usarse, pero solo cuando se trata de datos simples. Los objetos no son tan sencillos de manejar.
Cuando php intenta fusionar las matrices, intenta comparar los valores de los miembros de la matriz. Si un miembro es un objeto, no puede obtener su valor y usa el hash spl en su lugar. Lea más sobre spl_object_hash aquí.
Simplemente, si tienes dos objetos, instancias de la misma clase y si uno de ellos no es una referencia al otro, terminarás teniendo dos objetos, sin importar el valor de sus propiedades.
Para asegurarse de que no tiene ningún duplicado dentro de la matriz combinada, en mi opinión, debe manejar el caso por su cuenta.
Además, si va a fusionar matrices multidimensionales, considere usar array_merge_recursive () sobre array_merge () .
fuente
intenta usar el
array_unique()
esto elimina los datos duplicados dentro de la lista de sus matrices.
fuente
La combinación de dos matrices no eliminará el duplicado, puede probar el siguiente ejemplo para obtener una matriz única de dos
fuente