L'éditeur PHP Strawberry vous présentera aujourd'hui une technique pratique : comment combiner toutes les clés d'un tableau dans un nouveau tableau. En PHP, nous pouvons utiliser la fonction array_keys() pour réaliser cette fonction. Cette fonction peut renvoyer un nouveau tableau contenant toutes les clés du tableau d'origine, nous permettant d'utiliser et de traiter facilement les clés du tableau. Examinons ensuite la méthode de mise en œuvre spécifique !
PHP Obtenez toutes les clés du tableau :
Aperçu :
php fournit plusieurs méthodes pour obtenir toutes les clés du tableau afin de former un nouveau tableau. Cet article explorera ces méthodes et leurs nuances pour vous aider à faire un choix éclairé en fonction de vos besoins spécifiques.
Méthode :
1. array_keys()
array_keys()
La fonction renvoie un tableau de toutes les clés du tableau. Il accepte un tableau comme paramètre et renvoie un tableau contenant les valeurs clés.
$fruits = ["apple", "banana", "orange"]; $keys = array_keys($fruits); // [0, 1, 2]
2. clés()
keys()
est un alias de la fonction keys()
是 array_keys()
avec le même comportement et le même usage.
3. array_map() + array_keys()
Cette méthode utilise la fonction array_map()
pour appliquer array_map()
函数将 array_keys()
à chaque valeur du tableau. Le résultat est un nouveau tableau contenant toutes les clés.
$keys = array_map("array_keys", $fruits); // [0, 1, 2]
4. array_column()
La fonctionarray_column()
peut être utilisée pour extraire les valeurs d'une colonne spécifique d'un tableau multidimensionnel. Il peut également être utilisé comme méthode alternative d’extraction de clés.
$data = [ ["id" => 1, "name" => "John"], ["id" => 2, "name" => "Mary"], ]; $keys = array_column($data, "id"); // [1, 2]
5. boucle foreach
foreach
循环可遍历数组中的每个元素,并通过使用键字 key
Clés d'accès.
$keys = []; foreach ($fruits as $key => $value) { $keys[] = $key; }
6.Interface IteratorAggregate
Implémente la méthode IteratorAggregate
接口的对象可以通过迭代器访问键。可以使用 getIterator()
pour obtenir un itérateur et en obtenir les clés.
class MyArray implements IteratorAggregate { public function getIterator() { return new ArrayIterator($this->data); } } $arr = new MyArray(); $keys = []; foreach ($arr as $key => $value) { $keys[] = $key; }
Comparaison des performances :
Voici une comparaison approximative des performances de différentes méthodes :
array_keys()
: le plus rapidearray_map() + array_keys()
: plus rapidekeys()
: identique à keys()
: 与 array_keys()
array_column()
: Efficace pour les tableaux multidimensionnelsforeach
Boucle : performances médiocresIteratorAggregate
: Haute complexitéMéthode de sélection :
Le choix de la méthode qui correspond le mieux à vos besoins dépend des facteurs suivants :
Pour les tableaux simples et petits, array_keys()
或 array_map() + array_keys()
是最佳选择。对于大型和多维数组,array_column()
可能更合适。对于复杂的对象,IteratorAggregate
ou
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!