Étapes de jugement : 1. Utilisez array_keys() pour obtenir tous les noms de clés du tableau d'origine, la syntaxe est "array_keys(array)" ; 2. Utilisez array_filter() pour filtrer le tableau, la syntaxe est "function f( $v){return(is_string($ v));}$res=array_filter($keys,"f");" renverra un tableau de filtres contenant des éléments de chaîne ; 3. Déterminez si le tableau de filtres est un tableau vide. Si il est vide, le tableau est un tableau d'index.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
En PHP, l'indice (nom de clé) du tableau d'index est constitué de chiffres S'il y a un nom de clé dans. un tableau qui n'est pas des nombres, alors ce tableau est un tableau associatif (pas un tableau indexé).
Il vous suffit donc de déterminer si les noms de clés du tableau sont tous des nombres pour déterminer si un tableau est un tableau d'index.
Étapes de mise en œuvre :
Étape 1 : Utilisez la fonction array_keys() pour obtenir tous les noms de clés du tableau d'origine
La fonction array_keys() renvoie un nouveau tableau contenant tous les noms de clés du tableau.
array_keys(array,value,strict)
Paramètres | Description |
---|---|
array | Obligatoire. Spécifie un tableau. |
valeur | facultatif. Vous pouvez spécifier une valeur de clé, et seul le nom de clé correspondant à cette valeur de clé sera renvoyé. |
strict | Facultatif. Utilisé avec le paramètre value. Valeurs possibles :
|
<?php header('content-type:text/html;charset=utf-8'); $arr=array("r"=>"red",2,3,"hello",5,6); var_dump($arr); $keys=array_keys($arr); var_dump($keys); ?>
Étape 2 : Utilisez les fonctions array_filter() et is_string() pour filtrer le tableau et renvoyer les éléments de chaîne dans le tableau de clés
function f($v){ return(is_string($v)); } $res=array_filter($keys,"f"); var_dump($res);
renverra un élément de chaîne contenant Le tableau de filtres
Étape 3 : Déterminer si le tableau de filtres est un tableau vide
$res==[]
S'il est vide, le tableau est un tableau d'index
S'il n'est pas vide, le tableau ne l'est pas un tableau d'index, mais un tableau associatif
Code d'implémentation :
<?php header('content-type:text/html;charset=utf-8'); function f($v){ return(is_string($v)); } function fun($arr){ $keys=array_keys($arr); $res=array_filter($keys,"f"); if($res==[]){ echo "数组是索引数组<br>"; }else{ echo "数组不是索引数组,是关联数组<br>"; } } $arr=array("r"=>"red",2,3,"hello",5,6); var_dump($arr); fun($arr); $arr=array(1,2,3,"hello",5,6); var_dump($arr); fun($arr); ?>
Apprentissage recommandé : "Tutoriel vidéo PHP"
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!