Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: SeC en 18 Abril 2010, 16:42 pm



Título: Duda arreglos asociativos
Publicado por: SeC en 18 Abril 2010, 16:42 pm
Estaba haciendo un ejercicio y quise hacerlo usando arreglos asociativos, el problema creo que lo tengo en la sintaxis (aunque he mirando en php.net y creo lo hago bien), lo que intento hacer es algo así: (con el código voy explicando)

Código
  1. for($i=0;$i<$cant;$i++){  #cant es arbitrario
  2.    $alumnos=array($i => array("nombre" => $nombres[$i]));
  3. }

$nombres[] es una arreglo con indice numerico ascendente que contiene solo nombres, estilo:

Código
  1. $nombres[0] = "pedrito";
  2. $nombres[1] = "pepito";
  3. $nombres[2] = "felipito";

Y lo que intento con el código es en cada iteracion es ir seteando cada posición del arreglo, osea primero asigno algo a la pos 0,1,2,3... y lo que asigno es un arreglo asociativo de forma que quede algo así:

Código
  1. (
  2.            [0] => Array
  3.                (
  4.                    [nombre] =>Tomy
  5.                )
  6.  
  7.            [1] => Array
  8.                (
  9.                    [nombre] => Carlitos
  10.                )
  11.  
  12.            [2] => Array
  13.                (
  14.                    [nombre] => Juanito
  15.                )
  16. )
  17.  

Bueno y finalmente lo que quiero hacer (aparte de tener esa estructura de mi array ) es mostrar los datos en cada iteración para ver que se asigno bien lo que yo quería y es acá donde no muestra nada, por ello se que tengo un error :/

Código
  1. for($i=0;$i<$cant;$i++){  #cant es arbitrario
  2.    $alumnos=array($i => array("nombre" => $nombres[$i]));
  3.    echo $noticias[$i]["nombre"];
  4. }

A ver si alguien es tan amable de ayudarme :P , se me ocurre que tengo algun error de sintaxis, aunque la verdad nose que será.

PD: Lo que quiero estructuralmente es algo así (aunque con lo de arroba creo que quedo claro)  http://cl.php.net/manual/en/function.array.php#52885
( como el arreglo $fruits que crean .

Saludos y gracias de antemano a quienes contesten.


Título: Re: Duda arreglos asociativos
Publicado por: cassiani en 18 Abril 2010, 17:06 pm
Código
  1. $nombres[0] = "pedrito";
  2. $nombres[1] = "pepito";
  3. $nombres[2] = "felipito";
  4.  
  5. for($i=0;$i<count($nombres);$i++)
  6. {
  7. $alumnos[$i]['nombre'] = $nombres[$i];
  8. }
  9.  
  10. print_r($alumnos);

resultado:
Código:
Array ( [0] => Array ( [nombre] => pedrito ) [1] => Array ( [nombre] => pepito ) [2] => Array ( [nombre] => felipito ) ) 


Título: Re: Duda arreglos asociativos
Publicado por: AFelipeTrujillo en 19 Abril 2010, 02:13 am
Yo por lo general uso clases estándares ... con stdclass usa el mismo concepto


Título: Re: Duda arreglos asociativos
Publicado por: SeC en 20 Abril 2010, 03:59 am
Gracias a ambos por responder, me quedo con la respuesta de "cassiani" me ha servido n.n  .

Saludos.