0Pricing
PHP Academy · Leçon

Fonctions de transformation des tableaux

Appliquez array_map, array_filter et array_reduce.

Fonctions de transformation des tableaux est une leçon PHP Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage PHP Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours PHP Academy comprend 4 leçons au total.

Transformations fonctionnelles de tableaux

PHP fournit trois puissantes fonctions d'ordre supérieur pour transformer des tableaux sans boucles explicites :

  • array_map() — transformer chaque élément
  • array_filter() — conserver les éléments qui réussissent un test
  • array_reduce() — réduire le tableau à une seule valeur

array_map()

Appliquez une fonction de rappel à chaque élément et renvoyez un nouveau tableau :

<?php
$prices = [10, 20, 30, 40];

$doubled = array_map(fn($p) => $p * 2, $prices);
print_r($doubled); // [20, 40, 60, 80]

// Multiple arrays
$a = [1, 2, 3];
$b = [10, 20, 30];
$sums = array_map(fn($x, $y) => $x + $y, $a, $b);
print_r($sums); // [11, 22, 33]

array_filter()

Conservez les éléments qui satisfont une fonction de rappel. Sans fonction de rappel, les valeurs évaluées comme fausses sont supprimées :

<?php
$numbers = [1, 2, 3, 4, 5, 6];

$evens = array_filter($numbers, fn($n) => $n % 2 === 0);
print_r($evens); // [1=>2, 3=>4, 5=>6] — keys preserved!

$reindexed = array_values($evens); // re-index

$mixed = [0, 'hello', '', null, false, 42];
print_r(array_filter($mixed)); // [1=>'hello', 5=>42]

array_reduce()

Réduisez un tableau à une seule valeur en appliquant cumulativement une fonction de rappel :

<?php
$cart = [
    ['name' => 'Widget', 'price' => 10],
    ['name' => 'Gadget', 'price' => 25],
    ['name' => 'Doohickey', 'price' => 5],
];

$total = array_reduce($cart, fn($carry, $item) => $carry + $item['price'], 0);
echo $total;  // 40

Enchaîner des transformations

Enchaînez le mappage, le filtrage et la réduction pour créer des enchaînements de traitement des données expressifs :

<?php
$scores = [45, 80, 30, 90, 55, 70];

$passingAvg = array_sum(
    array_filter($scores, fn($s) => $s >= 50)
) / count(array_filter($scores, fn($s) => $s >= 50));

echo $passingAvg;  // 74.75

array_map avec des clés

array_map ne transmet pas les clés. Utilisez array_walk lorsque vous avez besoin de la clé et de la valeur :

<?php
$prices = ['apple' => 1.0, 'banana' => 0.5, 'cherry' => 2.0];

$formatted = [];
array_walk($prices, function($price, $name) use (&$formatted) {
    $formatted[$name] = '$' . number_format($price, 2);
});

print_r($formatted);

array_chunk()

Divisez un tableau en blocs d’une taille donnée :

<?php
$items = range(1, 10);
$batches = array_chunk($items, 3);
print_r($batches);
// [[1,2,3], [4,5,6], [7,8,9], [10]]

array_combine()

Créez un tableau associatif en combinant un tableau de clés avec un tableau de valeurs :

<?php
$keys   = ['name', 'age', 'city'];
$values = ['Alice', 30, 'London'];

$person = array_combine($keys, $values);
print_r($person);
// ['name'=>'Alice','age'=>30,'city'=>'London']

Assemblage de tableaux avec array_map

PHP ne dispose pas de fonction native pour assembler des tableaux, mais array_map(null, ...) crée une structure similaire :

<?php
$names  = ['Alice', 'Bob'];
$scores = [90, 85];

$zipped = array_map(null, $names, $scores);
print_r($zipped);
// [['Alice', 90], ['Bob', 85]]

array_map conserve les clés

Avec un seul tableau, array_map conserve les clés. Utilisez array_values pour réindexer :

<?php
$assoc = ['a' => 1, 'b' => 2, 'c' => 3];

$result = array_map(fn($v) => $v * 10, $assoc);
print_r($result);
// ['a'=>10, 'b'=>20, 'c'=>30] — keys preserved

array_sum et array_product

Des fonctions pratiques pour réduire rapidement des tableaux numériques :

<?php
$nums = [1, 2, 3, 4, 5];

echo array_sum($nums);      // 15
echo array_product($nums);  // 120 (1*2*3*4*5)

// Works with floats too
$prices = [1.5, 2.5, 3.0];
echo array_sum($prices);    // 7.0

Vérification rapide

Quelle fonction applique une fonction de rappel à chaque élément et renvoie un nouveau tableau ?

Récapitulatif : fonctions de transformation des tableaux

Résumé :

  • array_map() — transforme chaque élément en un nouveau tableau
  • array_filter() — conserve les éléments correspondant à un prédicat
  • array_reduce() — réduit le tableau à une seule valeur cumulée
  • array_chunk() — divise le tableau en sous-tableaux
  • array_combine() — crée un tableau associatif à partir de clés et de valeurs
  • array_sum/product() — réductions numériques rapides

Questions Fréquemment Posées

La leçon « Fonctions de transformation des tableaux » est-elle gratuite ?

Oui — le texte complet de « Fonctions de transformation des tableaux » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours PHP Academy, passe à CoddyKit PRO. Le cours PHP Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Fonctions de transformation des tableaux » ?

Appliquez array_map, array_filter et array_reduce. Tu pratiques PHP Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer PHP Academy ?

Aucune expérience préalable n'est requise. PHP Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Fonctions de transformation des tableaux » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon PHP Academy ?

Oui. Chaque leçon PHP Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Tableaux indexés et associatifs
  2. Tableaux multidimensionnels
  3. Trier et rechercher dans des tableaux
  4. Fonctions de transformation des tableaux
← Retour à PHP Academy