Anuncios

Bienvenidos sean a este post, hoy veremos una funcion para los arrays.

Anuncios

Esta funcion nos permite dividir un array en trozos (chunks) en base a la cantidad de elementos que le indiquemos, primero veamos como es su sintaxis:

array_chunk(array, tamaño[, preservar_claves])
Anuncios
Anuncios

En este caso los primeros dos argumentos: el primero sera para indicar cual es el array que dividiremos, el segundo sera para indicar cuantos elementos contendremos en cada trozo creado y el ultimo es un valor booleano para indicar si debemos conservar las claves o no, siendo true para conservarlas y false para no; en caso de no informar alguno de manera predeterminada usara false, para entenderlo vamos a crear un ejemplo y para ello debemos hacer un nuevo archivo con el nombre de array.php y le agregaremos el siguiente codigo:

array.php

<?php

$entrada = array('a','b','c','d','e');

$trozo = array_chunk($entrada,2);

foreach($trozo as $clave => $valor)
{
        print "[$clave]\n";
        foreach($valor as $c => $v)
        {
                print "\t[$c] => " . $v . "\n";
        }
}
?>
Anuncios
Anuncios

Primero definiremos un array con esos cinco elementos, luego en una nueva variable almacenaremos el resultado de aplicar la funcion, observen que para este caso primero pasamos el array anterior y le indicamos que almacene en cada trozo o chunk dos elementos, despues aplicaremos un foreach sobre la variable donde almacenamos el resultado de la funcion y este lo usaremos para obtener y almacenar la clave y el valor de este ultimo, en este caso el valor sera otro array y por esta razon debemos usar otro foreach pero antes de este mostraremos el valor de $clave actual, despues repetiremos el mismo foreach pero en el valor de origen usaremos a $valor y mostraremos las claves y valores almacenados en este nuevo array, veamos como es su salida:

$ php array.php
[0]
        [0] => a
        [1] => b
[1]
        [0] => c
        [1] => d
[2]
        [0] => e
$
Anuncios

Observen como nos creo tres nuevos «arrays» donde contiene dos valores para cada uno salvo en el ultimo donde hay uno solo porque no existen mas en el array original, pero en todos los casos nos indica posiciones que se resetean en cada caso, volvamos al codigo anterior y vayamos a la siguiente linea:

$trozo = array_chunk($entrada,2);
Anuncios

Y modifiquemosla de la siguiente manera:

$trozo = array_chunk($entrada,2, true);
Anuncios

En este caso como comentamos al principio le indicamos que debe respetar las claves del array original, volvamos a ejecutar el codigo para ver su salida:

$ php array.php
[0]
        [0] => a
        [1] => b
[1]
        [2] => c
        [3] => d
[2]
        [4] => e
$
Anuncios

Si observan la unica diferencia con la salida anterior es que ahora cada «chunk» o nuevo array creado mantiene el valor de clave del array original.

Anuncios

En resumen, hoy hemos visto array_chunk, que es, para que sirve, como se utiliza y un ejemplo practico para verlo en accion asi como tambien sus dos posibles salidas, espero les haya resultado de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Donación

Es para mantenimento del sitio, gracias!

$1.50