Maison  >  Article  >  développement back-end  >  Pourquoi n'y a-t-il pas de 5 dans l'indice du tableau php ?

Pourquoi n'y a-t-il pas de 5 dans l'indice du tableau php ?

PHPz
PHPzoriginal
2023-04-25 09:05:10482parcourir

En PHP, un tableau est une collection ordonnée de données, composée d'une ou plusieurs paires clé-valeur, et l'indice de la paire clé-valeur est utilisé comme index du tableau. Dans un tableau, chaque élément possède un index unique, et cet index unique peut être une valeur numérique, une chaîne ou d'autres types.

Cependant, nous rencontrons souvent un tel problème : Pourquoi le tableau PHP n'a-t-il pas l'indice 5 ?

En fait, il peut y avoir un indice de 5 dans le tableau PHP, mais dans certains cas, il peut être ignoré ou écrasé par d'autres indices.

Les raisons sont les suivantes :

1. L'indice de départ commence à 0

En PHP, l'indice de départ du tableau commence à 0, pas à 1. Par conséquent, lorsque nous déclarons un tableau, l’index du premier élément du tableau est 0 et non 1. C'est pourquoi nous voyons souvent des programmeurs PHP utiliser $my_array[0] pour représenter le premier élément du tableau.

2. Conversion automatique de type

PHP est un langage typé dynamiquement qui convertit automatiquement les types de variables. Cela signifie que lorsque nous utilisons un indice de chaîne non numérique comme index de tableau, PHP le convertira automatiquement en type entier. Par exemple, le code suivant :

$my_array["hello"] = "world";

echo $my_array["hello"]; //Output "world"

echo $my_array[0]; " world"

Ici, nous utilisons la chaîne "hello" comme indice du tableau, mais cette chaîne n'a pas de valeur, donc PHP la convertit en 0, donc $my_array[0] affichera "world".

3. D'autres indices peuvent couvrir 5

Une autre raison est que dans certains cas, d'autres indices du tableau peuvent couvrir l'indice 5. Par exemple, dans le code suivant :

$my_array = array(0, 1, 2, 3, 4, "five" => 5, 6);

echo $my_array[5];

Ici, nous fixons la valeur de l'élément avec l'indice "cinq" à 5. Puisque "cinq" n'est pas un indice numérique, son index dans le tableau est associatif et non numérique. Par conséquent, dans ce tableau, l'index 5 est déjà occupé par l'index associé "cinq", donc $my_array[5] affichera une chaîne vide.

Résumé :

En PHP, les tableaux peuvent avoir n'importe quel index, y compris les types numérique, chaîne, associatif et autres. Les indices de tableau commencent à compter à partir de 0 et PHP effectuera automatiquement la conversion de type, nous pouvons donc utiliser des chaînes, des nombres à virgule flottante et d'autres types comme index de tableau. Dans le même temps, dans un tableau, plusieurs éléments peuvent partager le même indice, comme dans un tableau associatif. Par conséquent, même s’il n’y a aucun élément avec l’indice de tableau 5, nous pouvons accéder à l’élément à cette position via d’autres méthodes.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn