jueves, 11 de septiembre de 2014

PHP (02) Cadenas y matrices (14) Separar y combinar matrices

Puede resultar muy útil el separar y combinar matrices para tratar la información, para ello existen dos funciones que vamos a tratar a continuación.

Separando matrices

Para separar matrices se utiliza la función array_slice, la cual extrae parte de una matriz, creando otra como podemos ver en el siguiente ejemplo:
<?php
 $escritores = array (0=> "Unamuno", 1=> "Cervantes", 2=> "Machado", 3=> "Becquer");
 $submatriz = array_slice($escritores, 1, 2);

 echo '<p><b>Slice submatriz</b></p>';
 foreach ($submatriz as $valor) {
  echo '<p>' . $valor . '</p>';
 }

 echo '<p><b>Slice escritores</b></p>';
 foreach ($escritores as $valor) {
  echo '<p>' . $valor . '</p>';
 }

?>

En el que podemos observar como actúa la función array_slice, introduciéndole como parámetros, el array del que vamos a extraer la nueva matriz y cuales son los elementos a separar.
Para que veas como funciona, pongo a continuación el resultado:
Slice submatriz
Cervantes
Machado
Slice escritores
Unamuno
Cervantes
Machado
Becquer

Union de matrices

Del mismo modo que se puede extraer una matriz de otra, se pueden unir en una nueva matriz utilizando array_merge, tal y como vemos en el siguiente ejemplo.
<?php
 $escritoresSpain = array (0=> "Unamuno", 1=> "Cervantes", 2=> "Machado", 3=> "Becquer");
 $escritoresEngland = array (0=> 'Shakespeare', 1=>'Tolkien', 2=>'Lewis');
 $escritores = array_merge($escritoresSpain, $escritoresEngland);

 echo '<p><b>Escritores</b></p>';
 foreach ($escritores as $valor) {
  echo '<p>' . $valor . '</p>';
 }
?>

Se puede observar que  array_merge necesita como parámetros los arrays que se van a unir en el nuevo, y que al recorrer este con un bucle foreach obtenemos el siguiente resultado:
Escritores
Unamuno
Cervantes
Machado
Becquer
Shakespeare
Tolkien
Lewis

No hay comentarios:

Publicar un comentario