Sconto del 20% su tutti i corsi inserendo nel form il codice SPRING20 | Fino al 30 aprile
Sconto del 20% su tutti i corsi inserendo nel form il codice SPRING20 | Fino al 30 aprile

Guide per aspiranti programmatori

Lezione 13 / 26

Funzioni PHP per lavorare con gli Array

L’ultima tappa del nostro viaggio alla scoperta delle funzioni di built-in di php è inerente a tutte quelle funzioni che riguardano l’ordinamento, la gestione e, più in generale, le operazioni con i php array.
Ancora una volta precisiamo che in questa guida non troverai tutte le funzioni php esistenti per lavorare con gli array, bensì quelle più utili e che, più probabilmente, potrà capitarti di dover utilizzare in un progetto reale.

Ricordiamo che, nel nostro percorso per imparare PHP, abbiamo già visto come ciclare gli array nella guida inerente ai concetti di sequenza, selezione e iterazione.

Tenendo presente ciò, vediamo un po ‘ di funzioni di built-in che possono tornarci utili.

Contare gli elementi di un array: php array count()

Nel tuo percorso come sviluppatore web in php potrai trovarti davanti alla necessità di sapere quanti elementi sono contenuti in un php array. Nulla di più semplice! La funzione di built-in adatta a questo scopo è count()
Vediamone un’applicazione.

Supponiamo di avere un array che contenga gli iscritti ad un corso php online.

$iscritti = [ ‘Valerio’ , ‘Paola’ , ‘Alessandro’ , ‘Claudia’ , ‘Giada’ , ‘Davide’ , ‘Marco’ , ‘Leo’ ];
echo “il numero di iscritti al corso php online è " . count($iscritti);

Avvalendoci del nostro caro php echo, ciò che otterremo stampato a schermo, sarà “il numero di iscritti al corso php online è 8.” Sapremo quindi, che 8 persone sono interessate ad imparare php! 

Estrarre parte di un array: php array_slice()

Immaginiamo, adesso, di voler considerare, della nostra lista di iscritti al corso php online, solo determinate persone: Davide, Marco e Leo, infatti, sono stati fortunati ed hanno diritto ad una scontistica! Come facciamo, però, a suggerire a PHP di prendere in analisi soltanto loro 3?

La funzione che ci permette di estrarre solo una porzione del nostro array è array_slice().
Questa funzione, accetta 3 parametri:

  • array di partenza
  • l’elemento a partire dal quale inizierà l’estrazione che viene definito offset 
  • il numero di elementi da estrapolare partendo dall’ elemento di offset, vale a dire la lunghezza della “fetta” di array che ci interessa.

Proviamo a capire meglio utilizzando l’esempio precedente.

$iscritti = [ ‘Valerio’ , ‘Paola’ , ‘Alessandro’ , ‘Claudia’ , ‘Giada’ , ‘Davide’ , ‘Marco’ , ‘Leo’ ];
$output = array_slice($iscritti, 4, 3);
print_r ($output);

In questo avremmo detto a PHP di restituire come output Davide, Marco e Leo, vale a dire gli ultimi 3 nomi del nostro array di partenza.
Ricorda! Nei php array si inizia a contare dallo 0. Il primo elemento sarà in posizione 0. 

Ecco perchè, nell’esempio di cui sopra, l’ elemento di offset indicato è 4 : php inizierà a contare, dunque, da ‘Giada’ in poi.
Verificare il contenuto di un array: php in_array()

Bene! Ora che abbiamo la nostra lista degli iscritti al corso php online, sappiamo quanti sono e sappiamo perfino quali di loro hanno diritto alla scontistica, pensiamo di poter fare sonni tranquilli e mostrar loro come e perchè imparare php. Attenzione! C’è stato un piccolo problema di comunicazione interna e ci viene richiesto se effettivamente una studentessa di nome Marta è presente nella lista. Come fare a verificare se il nome di Marta è presente nell’array degli iscritti? Niente panico! La funzione adatta in questo caso è in_array() che ci consente, appunto, di verificare il contenuto di un array. Questa funzione accetta due parametri: il valore che stiamo cercando e l’array in cui vogliamo cercarlo. Vediamolo nel codice.

$iscritti = [ ‘Valerio’ , ‘Paola’ , ‘Alessandro’ , ‘Claudia’ , ‘Giada’ , ‘Davide’ , ‘Marco’ , ‘Leo’ ];
if (in_array( ‘Marta’ , $iscritti)) {
  echo “Marta fa parte degli iscritti al corso php online”;
} else {
  echo “Marta non è tra gli iscritti del corso php online”;
}

Otterremo, quindi, come output che Marta non è tra gli iscritti al corso e potremo comunicarlo a chi di dovere!

Ordinamento degli array : php array sort()
Un’ altra tipologia di funzioni di built-in assai utili, è quella che consente di ordinare gli array.
Ci sono diverse funzioni che php mette a disposizione per farlo. Ne vedremo alcuni, rispettivamente inerenti agli array semplici e a quelli associativi (gli array chiave-valore
Ordinamento di array semplici
L’ ordinamento di array numerici può essere gestito in maniera crescente o decrescente; a seconda di questo fattore le funzioni di built-in da utilizzare saranno:

  • sort() consente di ordinare gli array numerici in ordine crescente, dal più piccolo al più grande;
  • rsort() è l’esatto inverso della funzione precedente: ordina, dunque, gli array numerici in ordine decrescente;

Ordinamento di array associativi (chiave-valore)
L’ ordinamento di array associativi può essere gestito in maniera crescente o decrescente, e anche alla volontà di gestirli in base al valore o in base alla chiave.
Nel primo caso (in base al valore) le funzioni cui fare riferimento saranno:

  • asort() per l’ordine crescente;
  • arsort() per l’ordine decrescente;

Nel caso in cui, invece, volessimo procedere all’ordinamento di array associativi in base alla chiave, le funzioni utili saranno:

  • ksort() per l’ordine crescente;
  • krsort() per l’ordine decrescente;

Unire gli array: php array_merge()

Supponiamo, ora, di avere più di un corso php online.
Alla nostra lista di iscritti, si aggiungeranno altre liste similari.  Avremo, dunque, una situazione in cui al nostro array $iscritti andranno ad aggiungersi altri array, quali ad esempio $iscritti2, $iscritti3, e così via.

E se ti dicessimo, che è possibile, ad esempio, avere un unico grande array con tutti gli iscritti alle corsi php del 2022?
A venire in nostro aiuto, in questo caso, è la funzione array_merge(), che ci consente di unire due o più array.
Come funziona? Gli elementi di un array vengono aggiunti in coda a quelli dell’array precedente, e, in caso di valori uguali, l’ultimo sovrascriverà gli altri.

Vediamo un esempio.
(Al fine di non dilungarci troppo, perdendo il focus sull’ effettivo scopo dell’esempio, faremo finta che l’ array $iscritti contenga solo 3 nomi) 

$iscritti = [ ‘Valerio’ , ‘Paola’ , ‘Alessandro’ ];
$iscritti2 = [ ‘Miriam’ , ‘Giulia’ ];
$iscritti3 = [ ‘Nina’ , ‘Ottavio’ ];

$iscritti_totali = array_merge($iscritti, $iscritti2, $iscritti3);
print_r($iscritti_totali);

Cosa ci restituirà php? 

Array
(
[0] => Valerio
[1] => Paola
[2] => Alessandro
[3] => Miriam
[4] => Giulia
[5] => Nina
[6] => Ottavio
)

Estrapolare chiavi o valori da un array associativo: array_keys() e array_values()

Le ultime due funzioni di built-in php che analizziamo, sono quelle utili ad estrarre chiavi o valori da un array associativo.
Le funzioni da considerare a questo scopo sono due:

  • array_keys()
  • array_values()

Vediamone un esempio pratico, con un array associativo contenente i nostri docenti e le materie che insegnano :

<?php

  $teachers = [
    'Davide' => ['PHP', 'Laravel', 'Python'],
    'Marco' => ['HTML', 'CSS', 'Javascript', 'Vue'],
    'Roberto' => ['PHP', 'Laravel', 'Flutter'],
  ];

  print_r(array_keys($teachers));
  print_r(array_values($teachers));

  Array
  (
  [0] => Davide
  [1] => Marco
  [2] => Roberto
  )

  Array
  (
  [0] => Array
      (
       [0] => PHP
       [1] => Laravel
       [2] => Python
      )
  [1] => Array
      (
       [0] => HTML
       [1] => CSS
       [2] => Javascript
       [3] => Vue
      )
  [3] => Array
      (
       [0] => PHP
       [1] => Laravel
       [2] => Flutter
      )
  )

 

 

Pagamento rateale

Valore della rata: A PARTIRE DA 115 €/mese.

Esempio di finanziamento 

Importo finanziato: € 2440 in 24 rate da € 115 – TAN fisso 9,55% TAEG 12,57% – importo totale del credito € 2841.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/01/2024 al 31/12/2024.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

*In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Pagamento rateale

Valore della rata: A PARTIRE DA 210 €/mese.

Esempio di finanziamento  

Importo finanziato: € 4500 in 24 rate da € 210,03 – TAN fisso 9,68% TAEG 11,97% – importo totale del credito € 5146,55.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/01/2024 al 31/12/2024.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Contattaci senza impegno per informazioni sul corso

Scopriamo insieme se i nostri corsi fanno per te. Compila il form e aspetta la chiamata di uno dei nostri consulenti.