Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

PHP 8.1: array_is_list()

array_is_list() è una funzione di PHP 8.1 che consente di stabilire se un array presenta unicamente chiavi di tipo intero in sequenza e a partire da 0
PHP 8.1: array_is_list()
array_is_list() è una funzione di PHP 8.1 che consente di stabilire se un array presenta unicamente chiavi di tipo intero in sequenza e a partire da 0
Link copiato negli appunti

array_is_list() è una nuova funzione introdotta in PHP con la versione 8.1 che permette di stabilire se un array presenta unicamente chiavi di tipo intero disposte in ordine sequenziale a partire da 0.

Comportamento di array_is_list()

La funzione restituisce TRUE soltanto quando la sequenza non presenta alcuno scarto al suo interno e l'array può essere classificato come una lista semantica di valori da 0 a N. Se l'array dovesse essere vuoto la funzione restituirebbe in ogni caso TRUE.

Dichiarata nel namespace globale, array_is_list() accetta esclusivamente un array come parametro, argomenti differenti danno luogo invece ad un'eccezione. Non sono accettati neanche degli iterabili o oggetti come nel caso dell'interfaccia ArrayAccess che consente di accedere agli oggetti come degli array.

Funzionamento di array_is_list()

In base alle sue caratteristiche array_is_list() è in grado di restituire TRUE in un caso come il seguente dove l'attribuzione delle chiavi ai valori viene effettuata di default a partire da 0:

array_is_list([1, 2, 3]);

o in quello che segue dove i valori utilizzati sono di tipo differente:

array_is_list(['php', 2, 3]);

Sia la prima che la seconda espressione presentano infatti dei valori con chiavi sequenziali di tipo intero che partono da 0. Nello stesso modo un array come quello proposto di seguito:

array_is_list(['php', 'java']);

o lo stesso array in cui però vengono esplicitate manualmante le chiavi:

array_is_list([0 => 'php', 1 => 'java']);

consentono ad array_is_list() di restituire TRUE in quanto il tipo di dato delle chiavi, l'ordine previsto e la mancanza di scarti nella sequenza rispettano in criteri previsti per la funzione.

array_is_list() restituisce invece FALSE nel caso in cui le chiavi esplicitate dallo sviluppatore non rispettano l'ordine sequenziale e non partono da 0, ad esempio:

array_is_list([1 => 'php', 0 => 'java']);

Oppure quando vengono esplicitate delle chiavi non intere:

array_is_list([0 => 'php', 'linguaggio' => 'java']);

Il medesimo risultato (FALSE) si ha anche se le chiavi precedenti a quella o a quelle non integer sono di tipo intero, in sequenza e ordinate a partire da 0.

Ti consigliamo anche