Cita:
Iniciado por maturano
No.
En realidad lo que comento
pateketrueke es correcto también, el operador => dentro de foreach se utiliza con un sólo proposito, obtener los valores y claves de un array.
Las maneras de formar un array leelas arriba y para entender que es lo que sucede hace:
Código PHP:
<?php
// Este array se llama asociativo, porque asocia una una clave con un valor
$array = array('Clave1' => 'Valor1','Clave2' => 'Valor2');
foreach ($array as $clave => $valor) {
echo "A esta $clave le corresponde $valor<br>\n";
}
foreach ($array as $valor) {
echo "Aquí no muestro claves y tengo a $valor<br>\n";
}
// y ahora fijate lo que pasa abajo, el porque leé lo que dice maturano
// Al definir la variable $array nuevamente, sobreescribe los datos anteriores.
$array = array('Valor1','Valor2');
foreach ($array as $clave => $valor) {
echo "A esta $clave le corresponde $valor<br>\n";
}
foreach ($array as $valor) {
echo "Aquí no muestro claves y tengo a $valor<br>\n";
}
La salida de lo de arriba es:
Cita:
A esta Clave1 le corresponde Valor1
A esta Clave2 le corresponde Valor2
y
Aquí no muestro claves y tengo a Valor1
Aquí no muestro claves y tengo a Valor2
Respectivamente.
Despúes:
A esta 0 le corresponde Valor1
A esta 1 le corresponde Valor2
y
Aquí no muestro claves y tengo a Valor1
Aquí no muestro claves y tengo a Valor2
Respectivamente.
Las claves en el segundo array como vez son "mágicas", númericas concecutivas y empiezan en 0, como te han comentado.
Código PHP:
//Escribir esto:
$array = array('Valor1','Valor2');
//o
$array = array( 0 => 'Valor1',1 => 'Valor2');
// Es equivalente en este caso.
PS: Es bueno también saber lo que significa la palabra array del ingles, buscalo en google, pero te anticipo con que array es un
conjunto de datos, lo podes encontrar como vectores, pero guarda porque vectores significa tambien otra cosa.