Explication détaillée de l'utilisation de la fonction PHP array_keys()

王林
Libérer: 2023-06-27 14:20:01
original
2177 Les gens l'ont consulté

Explication détaillée de l'utilisation de la fonction PHP array_keys()

array_keys() est une fonction de tableau très couramment utilisée en PHP. Elle peut être utilisée pour obtenir tous les noms de clés du tableau et renvoyer un tableau contenant les noms de clés obtenus. Ci-dessous, nous expliquerons son utilisation en détail.

  1. Description de la fonction

array_keys($array, $search_value, $strict);

Description du paramètre :

$array : paramètre requis, tableau d'entrée.

$search_value : Paramètre facultatif, valeur utilisée pour rechercher.

$strict : Paramètre facultatif, effectuez une comparaison identique. La valeur par défaut est false, qui utilise une comparaison assouplie.

Valeur de retour :

Si $search_value n'est pas défini, toutes les valeurs clés de $array sont renvoyées.

Si $search_value est défini, renvoie la valeur clé correspondant à $search_value dans $array.

  1. Exemple d'utilisation

Ce qui suit est un exemple simple montrant comment utiliser la fonction array_keys() pour obtenir les noms de clés dans un tableau :

<?php
  $array = array('a' => 'apple', 'b' => 'banana', 'c' => 'cherry', 'd' => 'durian');

  // 获取数组中所有的键名
  $keys = array_keys($array);
  print_r($keys);

  // 获取数组中的键名,搜索值为'banana'
  $banana_keys = array_keys($array, 'banana');
  print_r($banana_keys);
?>
Copier après la connexion

Le résultat est le suivant :

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)
Array
(
    [0] => b
)
Copier après la connexion
  1. Utilisation avancée

3.1 Retour au premier Le nom de clé d'une correspondance

Si $search_value n'est pas trouvé dans le tableau spécifié, array_keys() renverra un tableau vide. Cependant, nous pouvons utiliser la fonction array_slice() et le pointeur de tableau actuel pour obtenir le premier nom de clé.

L'exemple suivant montre comment obtenir le nom de clé de la première entrée correspondante :

<?php
  $array = array('a' => 'apple', 'b' => 'banana', 'c' => 'cherry', 'd' => 'durian', 'e' => 'banana');

  // 获取数组中的键名,搜索值为'banana'
  $banana_keys = array_keys($array, 'banana');

  if (count($banana_keys) > 0) {
      $first_banana_key = current(array_slice($banana_keys, 0, 1));
      echo '第一个匹配项的键名:' . $first_banana_key;
  }
?>
Copier après la connexion

Le résultat est le suivant :

第一个匹配项的键名:b
Copier après la connexion

3.2 Utilisation de la comparaison stricte

Nous pouvons utiliser le troisième paramètre $strict pour activer la comparaison congruente. Il garantira que les valeurs sont du même type de données avant la correspondance.

L'exemple suivant illustre comment utiliser $strict pour une comparaison congruente :

<?php
  $array = array('1' => 'apple', '2' => 'banana', '3' => 'cherry');
  
  // 未使用严格比较,输出结果为 '2'
  $keys = array_keys($array, '2');
  echo '未使用严格比较:';
  print_r($keys);

  // 使用严格比较,输出结果为空数组
  $keys = array_keys($array, '2', true);
  echo '使用严格比较:';
  print_r($keys);
?>
Copier après la connexion

Le résultat est le suivant :

未使用严格比较:Array ( [0] => 2 )
使用严格比较:Array ( )
Copier après la connexion
  1. Summary

array_keys() est une fonction de tableau très pratique en PHP qui peut être utilisée pour obtenir le contenu d'un tableau Tous les noms de clés. Nous pouvons utiliser des paramètres facultatifs pour rechercher une valeur spécifique et utiliser le troisième paramètre pour permettre une comparaison stricte.

Bien que array_keys() soit très puissant, nous devons toujours être prudents lorsqu'il s'agit de grands tableaux. S'il est utilisé avec négligence, il peut soit entraîner une saturation de la mémoire, soit prendre beaucoup de temps. Par conséquent, les problèmes de performances et d’évolutivité doivent être pris en compte lors de l’écriture du code.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal