Reivindiquemos el derecho de las cadenas alfanuméricas a ser arrays!
Así es, en PHP las cadenas tienen esta curiosa propiedad. Y esque se comportan como un array, donde el índice es un número representando la posición del cacarter, y el valor es el caracter que se encuentra en esa posición.
Veamos un código de ejemplo:
Código (php)
-
$cadena = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’;
-
echo $cadena[25],
$cadena[20],
$cadena[12],
$cadena[1],
$cadena[4];
El ejemplo anterior imprimiría en pantalla la palabra ZUMBE .
Así que ya sabéis, no discriminéis a una cadena por no tener índices, estaríais cayendo en un grave error!
Un comentario | tags: PHP, Código, General
Para recorrer un array en PHP tenemos tres opciones. Cada una es apropiada para distintas situaciones.
1: Bucle For
Este bucle es apropiado para arrays con un índice numérico. Si no hemos definido índices a nuestro array, por defecto será numérico.
Requiere tres parámetros, el primero es dónde empieza a contar, el segundo hasta cuándo, y el tercero las variaciones que va sufriendo la variable en cada iteración.
Código (php)
-
$vector =
array(‘a’,
‘b’,
‘c’);
-
$vector[] = ‘d’;
-
$vector[] = ‘e’;
-
for($i=0;$i<count($vector);$i++)
-
echo "<p>El vector con indice $i tiene el valor $vector[$i] </p>";
ver resultado
Otra ventaja de este bucle es que podemos recorrerlo parcialmente, o ir botándonos elementos. Por ejemplo, vamos a recorrer un array desde el elemento 3 hasta el 9, de dos en dos.
Código (php)
-
$vector =
array(‘a’,
‘b’,
‘c’,
‘d’,
‘e’,
‘f’,
‘g’,
‘h’);
-
$vector[] = ‘i’;
-
$vector[] = ‘j’;
-
for($i=3;$i<=9;$i+= 2)
-
echo "<p>El vector con indice $i tiene el valor $vector[$i] </p>";
ver resultado
2: Bucle Foreach
Este bucle es el más indicado para arrays con índices no numéricos, aúnque sirve también para recorrer fácilmente uno numérico. La ventaja es que da igual cuántos elementos tenga el array, o cómo sean; foreach los recorrerá sin problema.
Código (php)
-
$vector =
array(‘uno’=>
‘a’,
‘dos’=>
‘b’,
‘tres’=>
‘c’,
‘cuatro’=>
‘d’);
-
foreach($vector as $c=>$v)
-
echo "<p>El vector con indice $c tiene el valor $v </p>";
ver resultado
3: Bucle While
Para recorrer un bucle con índices, podemos optar también por el bucle While. Pero tendremos que hacer uso de las funciones list y each.
Código (php)
-
$vector =
array(‘uno’=>
‘a’,
‘dos’=>
‘b’,
‘tres’=>
‘c’,
‘cuatro’=>
‘d’);
-
while (list($clave,
$valor) =
each($vector)) {
-
echo "<p>El vector con indice $clave tiene el valor $valor </p>";
ver resultado
Elije en cada ocasión la que más te convenga, pero ten siempre en mente todas las opciones.
2 comentarios | tags: PHP, Código, General