Foros del Web » Programando para Internet » PHP »

eliminar de un array una key usando el valor de otro

Estas en el tema de eliminar de un array una key usando el valor de otro en el foro de PHP en Foros del Web. Hola, Resulta que tengo este array y quiero eliminar de subcat la key que no coincida con los valores de cat 4. Este el codigo ...
  #1 (permalink)  
Antiguo 08/11/2013, 14:11
Avatar de 23r9i0  
Fecha de Ingreso: noviembre-2008
Ubicación: Catalonia
Mensajes: 203
Antigüedad: 15 años, 5 meses
Puntos: 33
eliminar de un array una key usando el valor de otro

Hola,
Resulta que tengo este array y quiero eliminar de subcat la key que no coincida con los valores de cat 4.

Este el codigo que tengo ahora
Código:
		if ( isset( $fields_one['cat'] ) ) {
			foreach( $fields_one['cat'] as $a => $b ) { 
				if( $fields_one['type'] != $a )
					unset( $fields_one['cat'][$a] );
			}
			if ( isset( $fields_one['subcat'] ) ) {
				foreach( $fields_one['cat'] as $a => $b ) {
					foreach( $b as $c => $d ) {
						foreach( $fields_one['subcat'] as $e => $f ) {
							if ( $e != $d )
								unset( $fields_one['subcat'][$e] );
						}
					}
				}
			}
		}
Este el array que recibo por $_POST
Código:
array(4) {
  ["id"]=>
  string(3) "258"
  ["type"]=>
  string(1) "4"
  ["cat"]=>
  array(1) {
    [4]=>
    array(2) {
      [0]=>
      string(2) "13"
      [1]=>
      string(2) "12"
    }
  }
  ["subcat"]=>
  array(2) {
    [13]=>
    array(3) {
      [0]=>
      string(2) "28"
      [1]=>
      string(2) "29"
      [2]=>
      string(2) "30"
    }
    [10]=>
    array(2) {
      [0]=>
      string(2) "32"
      [1]=>
      string(2) "33"
    }
  }
}
Saludos y Gracias
  #2 (permalink)  
Antiguo 08/11/2013, 18:00
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años
Puntos: 270
Respuesta: eliminar de un array una key usando el valor de otro

array_diff

Etiquetas: key, usando, valor
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 01:47.