Foros del Web » Programando para Internet » PHP »

Problema al crear array dinamico

Estas en el tema de Problema al crear array dinamico en el foro de PHP en Foros del Web. Estimados, juntos con saludarlos, tengo una pequeña duda al declarar un arreglo. Necesito crear un arreglo que sea de la forma: Código PHP: $jugadores  = array( ...
  #1 (permalink)  
Antiguo 18/05/2012, 18:51
Avatar de sebastianxjavier  
Fecha de Ingreso: agosto-2011
Mensajes: 23
Antigüedad: 12 años, 8 meses
Puntos: 0
Problema al crear array dinamico

Estimados, juntos con saludarlos, tengo una pequeña duda al declarar un arreglo.

Necesito crear un arreglo que sea de la forma:

Código PHP:
$jugadores = array(
"Alexis Sanchez"=>"12b3",
"Humberto Suazo"=>"87kl",
"Arturo Vidal"=>"98p7"
); 
Si bien este arreglo está definido, necesito hacerlo de forma dinamica y es qui donde tengo el problema:

Código PHP:
$jugadores = array();
$sql "select nombre_jugador, clave_jugador from jugador";
$rsd mysql_query($sql);
while(
$rs mysql_fetch_array($rsd))
{
    
$jugadores[] = array(
        
$rs['nombre_jugador']=>$rs['clave_jugador']
        ); 
}

//Después lo recorro

foreach ($jugadores as $key=>$value
{
    echo 
"$key|$value\n";

Y lastimosamente el resultado es:

"Array|0 Array|1 Array|2"

Necesito que se genere el array de la forma antes expresada, no de la forma:

Código PHP:
while($rs mysql_fetch_array($rsd))
{
     
$jugadores[$rs['nombre_jugador']] = $rs['clave_jugador'];

Atentamente gracias :D
  #2 (permalink)  
Antiguo 18/05/2012, 19:05
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Problema al crear array dinamico

Para comenzar debes saber que esto no genera lo mismo...

Código PHP:
Ver original
  1. //primera forma
  2. $jugadores = array(
  3. "Alexis Sanchez"=>"12b3",
  4. "Humberto Suazo"=>"87kl",
  5. "Arturo Vidal"=>"98p7"
  6. );
  7.  
  8. //segunda forma
  9. $jugadores[] = array(
  10.         $rs['nombre_jugador']=>$rs['clave_jugador']
  11. );

la primera forma crearía un array de la siguiente manera:
Código:
array(10) {
  ["key0"]=>
  string(6) "value0"
  ["key1"]=>
  string(6) "value1"
  ["key2"]=>
  string(6) "value2"
  ["key3"]=>
  string(6) "value3"
  ["key4"]=>
  string(6) "value4"
  ["key5"]=>
  string(6) "value5"
  ["key6"]=>
  string(6) "value6"
  ["key7"]=>
  string(6) "value7"
  ["key8"]=>
  string(6) "value8"
  ["key9"]=>
  string(6) "value9"
}
mientras la segunda...
Código:
array(10) {
  [0]=>
  array(1) {
    ["key0"]=>
    string(6) "value0"
  }
  [1]=>
  array(1) {
    ["key1"]=>
    string(6) "value1"
  }
  [2]=>
  array(1) {
    ["key2"]=>
    string(6) "value2"
  }
  [3]=>
  array(1) {
    ["key3"]=>
    string(6) "value3"
  }
  [4]=>
  array(1) {
    ["key4"]=>
    string(6) "value4"
  }
  [5]=>
  array(1) {
    ["key5"]=>
    string(6) "value5"
  }
  [6]=>
  array(1) {
    ["key6"]=>
    string(6) "value6"
  }
  [7]=>
  array(1) {
    ["key7"]=>
    string(6) "value7"
  }
  [8]=>
  array(1) {
    ["key8"]=>
    string(6) "value8"
  }
  [9]=>
  array(1) {
    ["key9"]=>
    string(6) "value9"
  }
}
Como puedes ver no es lo mismo, por lo tanto la forma correcta es la forma en que no lo quieres generar, al menos como indicas que necesitas el arreglo...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #3 (permalink)  
Antiguo 18/05/2012, 19:09
 
Fecha de Ingreso: septiembre-2011
Mensajes: 480
Antigüedad: 12 años, 7 meses
Puntos: 18
Respuesta: Problema al crear array dinamico

Código PHP:
Ver original
  1. $jugadores = array();
  2. $sql = "select nombre_jugador, clave_jugador from jugador";
  3. $rsd = mysql_query($sql);
  4. while($rs = mysql_fetch_array($rsd))
  5. {
  6.     $jugadores[] = array(
  7.         $rs['nombre_jugador']=>$rs['clave_jugador']
  8.         );  
  9. }

en vez de eso!....has esto>>
Código PHP:
Ver original
  1. $jugadores = array();
  2. $sql = "select nombre_jugador, clave_jugador from jugador";
  3. $rsd = mysql_query($sql);
  4.   $jugadores[] = array(
  5. while($rs = mysql_fetch_array($rsd))
  6. {
  7.  
  8.         $rs['nombre_jugador']=>$rs['clave_jugador'] ;
  9.          
  10. }
  11.  );

#editado

Última edición por edward18_1; 18/05/2012 a las 19:15
  #4 (permalink)  
Antiguo 01/06/2012, 23:01
Avatar de sebastianxjavier  
Fecha de Ingreso: agosto-2011
Mensajes: 23
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Problema al crear array dinamico

Muchas gracias por las respuestas, las probare enseguida... Gracias :)

Etiquetas: dinamico, arreglos
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 13:26.