Foros del Web » Programando para Internet » PHP »

problemas con el foreach

Estas en el tema de problemas con el foreach en el foro de PHP en Foros del Web. buenas tardes ojala pudieran ayudarme a solucionar el sigueinte inconveniente explico: tengo una aplicacion el cual de un formulario html envia datos a un php ...
  #1 (permalink)  
Antiguo 04/03/2008, 16:15
 
Fecha de Ingreso: marzo-2008
Mensajes: 31
Antigüedad: 16 años, 1 mes
Puntos: 0
problemas con el foreach

buenas tardes ojala pudieran ayudarme a solucionar el sigueinte inconveniente explico:

tengo una aplicacion el cual de un formulario html envia datos a un php por medio de dos arreglo estoy intentando hacer esta prueba de unir dos arreglo normales para crear un arreglo multidimencional pero el error que me sale es que cuando desplega el mensaje se me repite la respuesta varias veces adjunto el codigo

<?

$a = array(uno,dos,tres);

$b = array(1,2,3);
foreach ($b as $d)
foreach ($a as $c )
{
$vector = array($c => $d);

foreach($vector as $indice => $valor) {

print "\$vector[$indice] => $valor.\n";
break;
}
}

?>


el codigo que pege es un pequeño ejemplo de lo que necesito si me colaboran con esta solucion ya podre seguir con el apso de guardarlo a un bd el cual lo se hacer sin problemas

cuando lo ejecuto sale lo sigueinte

$vector[uno] => 1. $vector[dos] => 1. $vector[tres] => 1. $vector[uno] => 2. $vector[dos] => 2. $vector[tres] => 2. $vector[uno] => 3. $vector[dos] => 3. $vector[tres] => 3.

como se pueden dar cuanta se repite
Reenviar Mensaje
  #2 (permalink)  
Antiguo 04/03/2008, 16:52
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: problemas con el foreach

Usa la función array_combine():

Código PHP:
$a = array(uno,dos,tres);
$b = array(1,2,3);
 
$vector array_combine($a$b); 
El resultado sería:
Código:
Array
(
    [uno] => 1
    [dos] => 2
    [tres] => 3
)
Un saludo,
  #3 (permalink)  
Antiguo 04/03/2008, 16:55
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Re: problemas con el foreach

lo que necesitas es el array_combine
Código PHP:
$a = array(uno,dos,tres);
$b = array(1,2,3);
$c array_combine($a$b);
print_r($c);
/* 
El resultado del ejemplo seria:
Array
(
    [uno] => 1
    [dos] => 2
    [tres] => 3
)*/ 
y bienvenido al foro.

saludos.

edito: segunda vez el día de hoy que me atraso, jeje. aunque no se trata de una competencia pero por lo menos no duplicaría la respuesta
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.

Última edición por eits; 04/03/2008 a las 17:45
  #4 (permalink)  
Antiguo 06/03/2008, 09:53
 
Fecha de Ingreso: marzo-2008
Mensajes: 31
Antigüedad: 16 años, 1 mes
Puntos: 0
Re: problemas con el foreach

gracias por la respuesta la duda pero me genera otro problema por que no siempre los dos arreglos son de ma misma longitud como les comente es una aplicacion con base de datos y todo entocnes cada arreglo son valores de del formulario y como no todos los campos son obligatorios entonces se peude dar el caso que el arreglo1 tenga 5 datos y el arreglo2 tenga 8 que se podria ser en ese caso

agradeciendo la colaboracion prestada por todos ustedes
  #5 (permalink)  
Antiguo 06/03/2008, 12:47
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: problemas con el foreach

Si no tienen la misma longitud, no podras asociarlos de manera indice => valor. Qué es lo que deseas lograr?

Saludos,
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 19:59.