En PHP, déterminer la position d'un élément dans un tableau est une opération très courante. Cet article présentera plusieurs méthodes pour déterminer la position des éléments dans un tableau.
Méthode 1 : Utiliser la fonction array_search()
En PHP, vous pouvez directement utiliser la fonction array_search() pour trouver la position d'un élément dans le tableau, et la valeur de retour est la valeur clé correspondant à la position du élément. S'il n'est pas trouvé, retournez false.
Exemple de code :
$arr = array('apple', 'banana', 'orange'); $pos = array_search('banana', $arr); echo $pos; // 输出 1
Dans l'exemple ci-dessus, la fonction array_search() est utilisée pour trouver la position de l'élément 'banane' dans le tableau $arr, et la valeur de retour est 1.
Il convient de noter que l'utilisation de cette méthode ne peut déterminer que la position du premier élément du tableau qui remplit les conditions. S'il y a plusieurs éléments qui remplissent les conditions, seule la position du premier élément peut être obtenue.
Méthode 2 : utiliser la fonction array_keys()
La fonction array_keys() peut renvoyer un tableau des positions de tous les éléments dont les valeurs de clé sont égales à la valeur spécifiée. Le nom de la clé dans le tableau renvoyé correspond à la position de. l'élément. S'il n'est pas trouvé, un tableau vide est renvoyé.
Exemple de code :
$arr = array('apple', 'banana', 'orange', 'banana'); $pos = array_keys($arr, 'banana'); print_r($pos); // 输出 Array ( [0] => 1 [1] => 3 )
Dans l'exemple ci-dessus, la fonction array_keys() est utilisée pour trouver la position de l'élément 'banane' dans le tableau $arr, et la valeur de retour est un tableau contenant les positions 1 et 3.
Il convient de noter que cette méthode ne peut déterminer que les positions de tous les éléments qui remplissent les conditions et ne peut pas obtenir de valeurs d'éléments spécifiques ou d'autres informations.
Méthode 3 : utilisez la boucle foreach()
Utilisez la boucle foreach() pour parcourir le tableau, vous pouvez juger les éléments du tableau un par un et enregistrer les informations de position des éléments en même temps.
Exemple de code :
$arr = array('apple', 'banana', 'orange', 'banana'); foreach($arr as $key => $value) { if($value == 'banana') { echo $key; // 输出 1 3 } }
Dans l'exemple ci-dessus, utilisez foreach() pour parcourir le tableau $arr et déterminez si les éléments sont égaux à « banane » un par un. S'ils sont égaux, la position de l'élément. est sorti.
Il convient de noter que cette méthode peut obtenir la valeur, la position et d'autres informations d'éléments spécifiques, mais elle est moins efficace, en particulier pour les grands tableaux, et la complexité temporelle est élevée.
Méthode 4 : Utiliser la fonction array_reduce()
La fonction array_reduce() peut effectuer des opérations de réduction sur tous les éléments du tableau, tout en enregistrant les informations de position de chaque élément. Elle peut stocker les éléments et les informations de position qui remplissent les conditions dans le. tableau en tant que tableau, puis obtenez les informations de position d'un élément en parcourant le tableau.
Exemple de code :
$arr = array('apple', 'banana', 'orange', 'banana'); $posArr = array_reduce($arr, function($carry, $item) { static $pos = 0; if($item == 'banana') { $carry[] = $pos; } $pos++; return $carry; }, array()); print_r($posArr); // 输出 Array ( [0] => 1 [1] => 3 )
Dans l'exemple ci-dessus, utilisez la fonction array_reduce() pour traiter le tableau $arr et jugez chaque élément si l'élément est égal à « banane », enregistrez les informations de position de l'élément dans le $carry. tableau, et enfin renvoie le tableau $ carry.
Il convient de noter que cette méthode peut facilement obtenir un tableau de toutes les positions d'éléments qui remplissent les conditions, mais par rapport à la boucle foreach(), la complexité temporelle est encore plus élevée pour les grands tableaux.
En résumé, il existe de nombreuses façons de déterminer la position d'un élément dans un tableau en PHP. Il est important de choisir la méthode appropriée en fonction de la situation réelle.
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!