Duda arreglos asociativos

Iniciado por SeC, 18 Abril 2010, 16:42 PM

0 Miembros y 1 Visitante están viendo este tema.

SeC

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 (php) [Seleccionar]
for($i=0;$i<$cant;$i++){  #cant es arbitrario
    $alumnos=array($i => array("nombre" => $nombres[$i]));
}


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

Código (php) [Seleccionar]
$nombres[0] = "pedrito";
$nombres[1] = "pepito";
$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 (php) [Seleccionar]

Array
(
            [0] => Array
                (
                    [nombre] =>Tomy
                )

            [1] => Array
                (
                    [nombre] => Carlitos
                )

            [2] => Array
                (
                    [nombre] => Juanito
                )
)


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 (php) [Seleccionar]
for($i=0;$i<$cant;$i++){  #cant es arbitrario
    $alumnos=array($i => array("nombre" => $nombres[$i]));
    echo $noticias[$i]["nombre"];
}


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.
Educad a los niños y no sera necesario castigar a los hombres - Pitagoras.

cassiani

Código (php) [Seleccionar]
$nombres[0] = "pedrito";
$nombres[1] = "pepito";
$nombres[2] = "felipito";

for($i=0;$i<count($nombres);$i++)
{
$alumnos[$i]['nombre'] = $nombres[$i];
}

print_r($alumnos);


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

AFelipeTrujillo

Yo por lo general uso clases estándares ... con stdclass usa el mismo concepto

SeC

Gracias a ambos por responder, me quedo con la respuesta de "cassiani" me ha servido n.n  .

Saludos.
Educad a los niños y no sera necesario castigar a los hombres - Pitagoras.