Arrays en PHP

Los arrays se pueden combinar unos dentro de otros: Los valores de un array pueden ser a su vez arrays.

Array indexado PHP

El array indexado es un caso especial de array asociativo donde las claves se llaman índices y son 0, 1, 2, 3, etc.

Crea el array:

    $lista = array(
        "Alberto",   // Índice 0
        "Bea",       // Índice 1
        "Carlos",    // Índice 2
        "Daniel",    // Índice 3 
    );

Accede a un elemento del array:

    echo $lista[1];  // Imprime Bea

Añade un elemento al final del array:

    $lista[] = "Ernesto";  // No es necesario especificar como índice el 4

Cambia un elemento del array:

    $lista[0] = "Ana";  // Cambia Alberto por Ana

El número de elementos que hay en el array:

    echo count($lista); // Imprime 5 si contamos a Ernesto

Imprime el array en modo de prueba:

    print_r($lista);

Accede a todos los valores del array:

    foreach ($lista as $nombre) {
        echo $nombre . '<br>';
    }

Accede a todos los índices y valores del array:

    foreach ($lista as $indice=>$nombre) {
        echo "$indice $nombre <br>";
    }

Array asociativo PHP

Crea el array:

    $lista = array(
        "com" => "Comercial", 
        "edu" => "Educación",     
        "gob" => "Gobierno",  
    );

Accede a un elemento del array:

    echo $agenda["edu"];  // Imprime Educación

Añade un elemento al array:

    $agenda["cat"] = "Catalunya";

Cambia un elemento del array:

    $agenda["com"] = "Empresarial";  // Cambia Comercial por Empresarial

El número de elementos que hay en el array:

    echo count($agenda); // Imprime 4 si contamos a Catalunya

Borra un elemento del array:

    unset($agenda["gob"]);

Imprime el array en modo de prueba:

    print_r($agenda);

Accede a todos los valores del array:

    foreach ($agenda as $valor) {
        echo $valor . '<br>';
    }

Accede a todas las claves y valores del array:

    foreach ($agenda as $clave=>$valor) {
        echo "$clave $valor <br>";
    }

JSON

Convierte arrays de PHP a JSON:

    $json = json_encode($array, JSON_PRETTY_PRINT);

Convierte JSON a arrays de PHP:

    $array = json_decode($json, $assoc=true);        

Array en PHP vs formato JSON

PHP

    $datos = array(
        array(
            "pagina" => 3,
            "num_paginas" => 10,
        ),
        array(
            array(
                "nombre" => "Francia",
                "capital" => "París",
            ),
            array(
                "nombre" => "Italia",
                "capital" => "Roma",
            ),
        ),
    );

JSON

    [
        {
            "pagina": 3,
            "num_paginas": 10
        },
        [
            {
                "nombre": "Francia",
                "capital": "París"
            },
            {
                "nombre": "Italia",
                "capital": "Roma"
            }
        ]
    ]

Proinf.net