Foros del Web » Programando para Internet » PHP »

Duda: comparar arrays multidimensionales

Estas en el tema de Duda: comparar arrays multidimensionales en el foro de PHP en Foros del Web. Hola a todos, tengo un problema que creo que es un poco tonto. Tengo 2 arrays (tienen mas cantidad de valores, peor para el ejemplo ...
  #1 (permalink)  
Antiguo 06/11/2014, 08:15
 
Fecha de Ingreso: julio-2008
Mensajes: 543
Antigüedad: 16 años, 4 meses
Puntos: 56
Duda: comparar arrays multidimensionales

Hola a todos, tengo un problema que creo que es un poco tonto.

Tengo 2 arrays (tienen mas cantidad de valores, peor para el ejemplo los dejo chiquititos)

array 1:
Código:
Array
(
    [0] => 2
)
array 2
Código:
Array
(
    [0] => Array
        (
            [id_element] => 1
            [id_skema] => 1
            [value] => dummy skema 001
        )

    [1] => Array
        (
            [id_element] => 2
            [id_skema] => 2
            [value] => dummy skema 002
        )

)
y necesito saber cuales de los id_element del array 2 estan en el array 1 para no mostrarlos. Entiendo que al ser uno multidimensional y el otro no, no los puedo comparar sin mas, asi que el array 1 lo he convertido a:

Código:
Array
(
    [0] => Array
        (
            [id_element] => 2
            [id_skema] => 2
            [value] => 2
        )

)
para asi comparar los elementos basandome en la key id_element

pero me he quedado ahi. He tratado de hacerlo con array_diff pero me da un warning de "array to string conversion" :/

Por cierto, que el array 1 viene de una string cuyo formato es

|valor|valor|valor|

al que hago un explode (es para contruir una lista que hago el explode, y pensaba a partir de ahi aprovechar para comparar)

Alguien me puede echar una mano? GRACIAS!!!
__________________
Un saludo! :-)
Quiero ser el primero

Etiquetas: arrays
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:07.