En PHP, les tableaux sont intrinsèquement associatifs, dépourvus de mécanismes intégrés pour différencier les clés numériques à partir de 0 ( tableaux séquentiels) et des clés de chaîne arbitraires (tableaux associatifs). Cette distinction peut être cruciale pour divers scénarios de programmation.
Pour déterminer si un tableau est séquentiel, vous pouvez exploiter la nouvelle fonction array_is_list() dans PHP 8.1. Cependant, pour les anciennes versions de PHP, une fonction personnalisée peut constituer une alternative pratique :
function array_is_list(array $arr) { if ($arr === []) { return true; } return array_keys($arr) === range(0, count($arr) - 1); }
Cette fonction vérifie si le tableau est vide ou si ses clés sont une séquence continue de nombres commençant à 0. Si les deux conditions sont remplies, le tableau est considéré comme séquentiel.
Pour illustrer la fonctionnalité de array_is_list() fonction :
var_dump(array_is_list([])); // true var_dump(array_is_list(['a', 'b', 'c'])); // true var_dump(array_is_list(["0" => 'a', "1" => 'b', "2" => 'c'])); // true var_dump(array_is_list(["1" => 'a', "0" => 'b', "2" => 'c'])); // false var_dump(array_is_list(["a" => 'a', "b" => 'b', "c" => 'c'])); // false
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!