conversion de boucle de tableau php

王林
Libérer: 2023-05-19 20:00:47
original
540 Les gens l'ont consulté

En programmation PHP, les tableaux sont l'une des structures de données les plus courantes. Les tableaux nous permettent de stocker, d'organiser et d'accéder à de grandes quantités de données associées. Dans de nombreux cas, nous devons effectuer une série d’opérations sur les tableaux, telles que la recherche, le tri, le filtrage, etc. Parmi eux, la conversion de boucle de tableau est une opération relativement importante. Cet article présentera en détail comment utiliser PHP pour implémenter la conversion de boucle de tableau.

1. Structure de base de la boucle de tableau

En PHP, nous pouvons utiliser for, foreach et d'autres instructions de boucle pour parcourir un tableau. Voici la structure de base d'une boucle for :

for ($i = 0; $i < count($array); $i++) {
  // do something with $array[$i]
}
Copier après la connexion

Le même effet peut être obtenu en utilisant l'instruction foreach :

foreach ($array as $value) {
  // do something with $value
}
Copier après la connexion

2. Méthodes de conversion de tableau

En PHP, nous pouvons utiliser les deux méthodes suivantes pour convertir des tableaux :

  1. Utilisation des fonctions de tableau

PHP fournit un grand nombre de fonctions pour effectuer diverses opérations sur les tableaux, dont certaines peuvent être utilisées pour convertir des tableaux. Voici quelques fonctions couramment utilisées :

  • array_map() : applique une fonction de rappel à chaque élément du tableau et renvoie un nouveau tableau
  • array_filter() : utilise la fonction de rappel pour filtrer les éléments du tableau et renvoie un nouveau Tableau de
  • array_reduce() : réduit le tableau à une seule valeur et renvoie cette valeur

Voici un exemple d'utilisation de la fonction array_map() pour mettre au carré chaque élément du tableau :

$array = array(1, 2, 3, 4, 5);
$new_array = array_map(function($x){ return $x * $x; }, $array);
print_r($new_array);
Copier après la connexion

Le résultat est :

Array
(
    [0] => 1
    [1] => 4
    [2] => 9
    [3] => 16
    [4] => 25
)
Copier après la connexion
Copier après la connexion

Notez que lors de l'utilisation de la fonction array_map(), nous devons passer une fonction de rappel en paramètre. Cette fonction de rappel prend un argument (la valeur de chaque élément) et renvoie une valeur pour remplacer l'élément.

  1. Utilisation de la structure de boucle

Nous pouvons parcourir le tableau et le convertir via l'instruction for ou foreach. Voici un exemple d'utilisation d'une boucle for pour mettre au carré les éléments d'un tableau :

$array = array(1, 2, 3, 4, 5);
$new_array = array();
for ($i = 0; $i < count($array); $i++) {
  $new_array[] = $array[$i] * $array[$i];
}
print_r($new_array);
Copier après la connexion

Le résultat de sortie est également :

Array
(
    [0] => 1
    [1] => 4
    [2] => 9
    [3] => 16
    [4] => 25
)
Copier après la connexion
Copier après la connexion

3. Opération de conversion par lots

Supposons que nous ayons un tableau bidimensionnel avec les données suivantes :

$data = array(
  array('name' => '张三', 'age' => 19, 'gender' => '男'),
  array('name' => '李四', 'age' => 21, 'gender' => '女'),
  array('name' => '王五', 'age' => 20, 'gender' => '男'),
);
Copier après la connexion

Maintenant, nous devons le convertir au format suivant :

$new_data = array(
  array('姓名' => '张三', '年龄' => 19, '性别' => '男'),
  array('姓名' => '李四', '年龄' => 21, '性别' => '女'),
  array('姓名' => '王五', '年龄' => 20, '性别' => '男'),
);
Copier après la connexion

Nous pouvons utiliser une boucle foreach pour réaliser cette opération :

$new_data = array();
foreach ($data as $values) {
  $new_data[] = array('姓名' => $values['name'], '年龄' => $values['age'], '性别' => $values['gender']);
}
print_r($new_data);
Copier après la connexion

Le résultat de sortie est le suivant :

Array
(
    [0] => Array
        (
            [姓名] => 张三
            [年龄] => 19
            [性别] => 男
        )

    [1] => Array
        (
            [姓名] => 李四
            [年龄] => 21
            [性别] => 女
        )

    [2] => Array
        (
            [姓名] => 王五
            [年龄] => 20
            [性别] => 男
        )

)
Copier après la connexion

4. Notes

  1. L'original le tableau ne sera pas modifié

en PHP, les opérations de conversion en boucle génèrent généralement un nouveau tableau sans modifier le tableau d'origine. Par conséquent, il convient de veiller à ne pas modifier la valeur du tableau d'origine lors du fonctionnement.

  1. Fonction de rappel

Lors de l'utilisation de fonctions de tableau pour la conversion, nous devons passer une fonction de rappel en tant que paramètre. Si la fonction de rappel doit accéder à certaines variables externes, vous devez utiliser une fermeture pour définir la fonction de rappel afin de garantir qu'elle peut accéder correctement aux variables externes.

  1. Index du tableau

Dans l'opération de conversion en boucle, nous devons faire attention à l'index du tableau. Si nous ne spécifions pas explicitement l'index du nouveau tableau, PHP attribuera automatiquement la valeur d'index, généralement en commençant par 0 et en augmentant.

5. Résumé

Un tableau en PHP est une structure de données très utile, et la conversion de boucle est une opération très importante parmi elles. Nous pouvons utiliser des structures de boucle for, foreach ou des fonctions de tableau telles que array_map, array_filter, array_reduce, etc. pour réaliser la conversion de tableau. Pendant l'opération, vous devez faire attention à ne pas modifier la valeur du tableau d'origine et vous devez faire attention à l'index du tableau. J'espère que cet article pourra aider les lecteurs à maîtriser la conversion de boucle de tableau en 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!

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!