Maison > Article > développement back-end > Comment déterminer s'il s'agit d'un tableau unidimensionnel ou d'un tableau bidimensionnel en PHP
En PHP, vous pouvez utiliser la fonction count() pour juger. Cette fonction peut obtenir la longueur du tableau. Si vous omettez le deuxième paramètre, vous n'obtiendrez que le nombre d'éléments dans une dimension ; comparez les paramètres en omettant et en ne omettant pas les paramètres. Lorsque la longueur est la même, la syntaxe est "count($arr)== count($arr,1)".
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3
En PHP, vous pouvez utiliser la fonction count() pour juger.
<?php header('content-type:text/html;charset=utf-8'); $array = array("php", 11, '', 12, "PHP中文网",13,"green",2021,"mysql","14",15); if (count($array) == count($array, 1)) { echo '是一维数组'; } else { echo '是二维数组'; } ?>
Principe de la solution :
count ( mixed $var [, int $mode ] )
– Calculer le nombre de cellules dans le tableau ou le nombre d'attributs dans l'objet
$mode : est un paramètre facultatif et peut être omis.
Si le paramètre $mode est omis ou défini sur COUNT_NORMAL ou 0, la fonction count() ne détectera pas les tableaux multidimensionnels ;
Si $mode est défini sur COUNT_RECURSIVE ou 1, le count() ; La fonction calculera récursivement le nombre d'éléments du tableau est particulièrement utile pour calculer le nombre d'éléments dans des tableaux multidimensionnels.
Si le paramètre $mode est omis, count ne détectera pas les tableaux multidimensionnels et n'obtiendra que le nombre d'éléments dans une dimension.
Il vous suffit donc de comparer si les longueurs obtenues sont les mêmes lorsque le paramètre $mode est omis et lorsque le paramètre $mode n'est pas omis, vous pouvez déterminer s'il s'agit d'un tableau unidimensionnel ou d'un tableau bidimensionnel.
Exemple de paramètre $mode :
<?php header("Content-type:text/html;charset=utf-8"); $arr= array ("张三", 25, array("高数","PHP教程","英语"), ); //输出语句 echo "数组长度为:".count($arr,1); echo "<br>不递归检测数组,长度为:".count($arr); ?>
Sortie :
数组长度为:6 不递归检测数组,长度为:3
Après avoir lu les résultats de sortie ci-dessus, êtes-vous confus ? Il n'y a pas seulement 5 éléments dans le tableau ("Zhang San", 25, "High" Number" ", "Tutoriel PHP", "English"), pourquoi la longueur du tableau affichée dans le résultat n'est-elle pas 5, mais 6 ?
En fait, c'est parce qu'à ce moment, la fonction count() boucle pour compter tous les éléments du tableau à deux dimensions "array("高数","PHP tutoriel","English")" sera compté comme. un tout. Les éléments ("High Mathematics", "PHP Tutorial", "English") seront à nouveau comptés, donc le résultat final est 6.
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!