<?php
// definizione esplicita
$colori = array("rosso", "verde", "blu");
$colori[] = "viola"; // aggiunge un elemento in coda
$n = count($colori); // numero di elementi: 4
// scansione con for
for ($i = 0; $i < $n; $i++)
print "$colori[$i] ";
// scansione con foreach
foreach ($colori as $colore)
print "$colore ";
// definizione implicita, elemento per elemento
$pari[0] = 2;
$pari[1] = 4;
$pari[2] = 6;
?>0$array[] = valore;
aggiunge un elemento alla fine dell'arraycount($array)
restituisce il numero di elementiforeach scorre tutti
gli elementi senza gestire l'indice$primi = [2, 3, 5, 7, 11];Gli elementi sono individuati da una chiave (es. una stringa) invece che da un indice numerico:
<?php
$province_piemonte = array(
"AL" => 440481, "AT" => 221871, "BI" => 185701,
"CN" => 592782, "NO" => 372109, "TO" => 2306881,
"VB" => 163123, "VC" => 179484
);
$totale_abitanti = 0;
//foreach ($array as $chiave => $valore) fornisce a ogni giro sia la chiave che il valore
foreach ($province_piemonte as $sigla => $abitanti)
{
print "Sigla provincia: $sigla Abitanti: $abitanti <br>";
$totale_abitanti += $abitanti;
}
print "Il totale degli abitanti del Piemonte e': $totale_abitanti";
$abitanti_novara = $province_piemonte["NO"];
print "Il numero di abitanti della provincia di novara: $abitanti_novara";
?>e' sufficiente assegnare un valore alla chiave che vogliamo inserire.
e' sufficiente assegnare un nuovo valore alla chiave che vogliamo modificare
E' necessario usare la funzione unset()
<?php
$frutti = ['mela', 'banana', 'arancia', 'mela'];
$numeri = [10, 20, 30, 40, 50];
// Cerca un valore
$key = array_search('banana', $frutti, true); // Restituisce 1 (la posizione di 'banana')
$key = array_search('uva', $frutti, true); // Restituisce false
// il terzo parametro serve ad evitare che vengano
// eseguite conversioni di tipo durante i confronti ('2' == 2 ) se strict non attivo
// Controlla solo se il valore esiste (risultato true o false)
$esiste = in_array('arancia', $frutti); // true
$esiste = in_array('uva', $frutti); // false
?>
<?php
$partecipanti = [
'Simone' => ['anno' => 1986, 'sesso' => 'M', 'email' => 'simone@notreal.com'],
'Luca' => ['anno' => 1991, 'sesso' => 'M', 'email' => 'luca@notreal.com'],
'Paolo' => ['anno' => 1985, 'sesso' => 'M', 'email' => 'paolo@notreal.com'],
];
// accesso a un campo: prima la chiave esterna, poi quella interna
$nome = "Luca";
print "La mail di $nome e': " . $partecipanti[$nome]['email'];
// aggiunta di un nuovo partecipante
$partecipanti["Giuseppe"] = ['anno' => 1992, 'sesso' => 'M',
'email' => 'giuseppe@test.com'];
print_r($partecipanti); // stampa struttura e valori
$n = count($partecipanti); // 4
?><?php
// array con le sole chiavi
$nomi = array_keys($partecipanti);
print_r($nomi);
// Array ( [0] => Simone [1] => Luca [2] => Paolo [3] => Giuseppe )
// array con i soli valori (indici numerici)
$valori = array_values($partecipanti);
print_r($valori);
?>print_r() è molto utile in fase di
debug per visualizzare il contenuto di un array.
| Funzione | Descrizione |
|---|---|
count($a) |
numero di elementi |
min($a) / max($a) |
valore minimo / massimo |
sort($a) |
ordina in modo crescente (modifica l'array) |
array_search($val, $a) |
cerca un valore e ne restituisce la chiave |
array_keys($a) |
array delle chiavi |
array_values($a) |
array dei valori |
print_r($a) |
stampa struttura e valori |
<?php
$colori = array("r" => "rosso", "v" => "verde", "b" => "blu");
foreach ($colori as $key => $colore) {
echo "Chiave: $key Colore: $colore <br>";
}
echo array_search("verde", $colori); // true
$numeri = array(3, 2, 10, 4, 5, 1);
echo min($numeri); // 1
echo max($numeri); // 10
sort($numeri); // [1, 2, 3, 4, 5, 10]
foreach ($numeri as $numero)
print "$numero ";
?>