Aller au contenu
← Tous les articles✍️ Article

Optimisez Votre Code PHP : 8 Fonctions à Connaître pour Manipuler les Tableaux avec Efficacité

Si vous souhaitez devenir un bon développeur PHP, il est essentiel de maîtriser la manipulation des tableaux. Ces structures sont omniprésentes en PHP, que ce soit pour stocker…

· 4 min de lecture

📰 Publié à l'origine sur medium.com🇬🇧 Read in English

Photo by Ben Griffiths on Unsplash

Si vous souhaitez devenir un bon développeur PHP, il est essentiel de maîtriser la manipulation des tableaux. Ces structures sont omniprésentes en PHP, que ce soit pour stocker des données temporairement, les organiser ou les traiter avant de les enregistrer dans une base de données. Une bonne compréhension de leur fonctionnement vous permettra de gérer et manipuler vos informations de manière plus efficace et optimisée.

Dans cet article, nous allons explorer huit fonctions essentielles pour travailler efficacement avec les tableaux en PHP. Ces fonctions vous permettront d’optimiser votre code et de résoudre des problèmes complexes plus facilement.

1. array_map

La fonction array_map applique une fonction donnée à chaque élément d’un ou plusieurs tableaux et retourne un tableau contenant les résultats. À noter que les clés des tableaux d’origine ne sont pas affectées : elles sont conservées dans le tableau résultant, même si les valeurs sont modifiées.

Exemple :

$numbers = [1, 2, 3, 4];
$squaredNumbers = array_map(function($n) {
  return $n * $n;
}, $numbers);

print_r($squaredNumbers); 
// Résultat : [1, 4, 9, 16]

💡 Astuce : Si vous n’avez pas besoin de créer un nouveau tableau, mais souhaitez simplement modifier le tableau existant, vous pouvez utiliser ‘array_walk’. ‘array_walk’ applique une fonction à chaque élément du tableau mais modifie directement ce dernier, sans le retourner. Cela peut être plus efficace dans certains cas.

Exemple avec ‘array_walk’

$numbers = [1, 2, 3, 4];
array_walk($numbers, function(&$n) {
    $n *= $n;
});
print_r($numbers);
// Résultat : [1, 4, 9, 16]

Comme vous pouvez le voir, ‘array_walk’ modifie directement le tableau $numbers sans en créer un nouveau.

2. array_reduce

La fonction `array_reduce` est utilisée pour réduire un tableau à une seule valeur cumulative en appliquant une fonction de rappel (callback) à ses éléments. Cependant, cette “valeur” peut être de n’importe quel type, y compris un tableau, une chaîne ou un objet, en fonction de la logique définie dans le callback.

Exemple :

$numbers = [1, 2, 3, 4];
$sum = array_reduce($numbers, function($carry, $item) {
. return $carry + $item;
}, 0);

echo $sum; 
// Résultat : 10

3. array_filter

La fonction `array_filter` filtre les éléments d’un tableau en fonction d’une fonction de rappel. Seuls les éléments pour lesquels la fonction de rappel retourne `true` seront inclus dans le tableau retourné. Il est important de noter que la fonction de rappel peut également accepter la clé de chaque élément, ce qui permet de filtrer non seulement en fonction de la valeur mais aussi de la clé.

Pour plus d’informations, tu peux consulter la documentation officielle sur array_filter avec mode.

Exemple :

$numbers = [1, 2, 3, 4, 5];
$evenNumbers = array_filter($numbers, function($n) {
. return $n % 2 === 0;
});

print_r($evenNumbers); 
// Résultat : [2, 4]

4. array_merge

La fonction `array_merge` combine un ou plusieurs tableaux en un seul. Cette fonction sert à fusionner plusieurs ensembles de données.

Exemple :

$array1 = ["a" => "pomme", "b" => "banane"];
$array2 = ["a" => "ananas", "c" => "citron"];
$result = array_merge($array1, $array2);

print_r($result);
// Résultat : ["a" => "ananas", "b" => "banane", "c" => "citron"]

5. array_keys

La fonction `array_keys` retourne toutes les clés d’un tableau ou les clés correspondant à une valeur spécifiée. Ça sert particulièrement pour récupérer des indices de tableaux associatifs.

Exemple :

$array = ["a" => "pomme", "b" => "banane", "c" => "citron"];
$keys = array_keys($array);

print_r($keys); 
// Résultat : ["a", "b", "c"]

Cependant, pour vérifier si une clé existe dans un tableau, il est plus performant d’utiliser ‘array_key_exists’ plutôt que d’obtenir toutes les clés avec ‘array_keys’ puis d’utiliser ‘in_array’. Utiliser ‘array_key_exists’ est plus direct et évite des opérations inutiles. 🚀

$array = ['nom' => 'Jean', 'âge' => 30];

if (array_key_exists('nom', $array)) {
    echo 'La clé "nom" existe dans le tableau';
}

6. array_values

La fonction `array_values` retourne toutes les valeurs d’un tableau. Je vous conseille de l’utiliser lorsque vous souhaitez récupérer un tableau indexé uniquement par des entiers à partir d’un tableau associatif.

Exemple :

$array = ['a' => 'pomme', 'b' => 'banane', 'c' => 'citron'];
$values = array_values($array);

print_r($values); 
// Résultat : ['pomme', 'banane', 'citron']

7. array_unique

La fonction `array_unique` permet de supprimer les doublons d’un tableau. Cette fonction est utile pour obtenir un ensemble de valeurs distinctes.

Exemple :

$array = ['pomme', 'banane', 'pomme', 'citron'];
$uniqueArray = array_unique($array);

print_r($uniqueArray); 
// Résultat : ['pomme', 'banane', 'citron']

8. array_combine

La fonction ‘array_combine’ crée un tableau en combinant deux tableaux distincts : l’un contenant les clés et l’autre contenant les valeurs. Chaque clé du premier tableau sera associée à une valeur correspondante du second tableau. C’est pratique pour associer deux ensembles de données, comme des noms et des âges.

Exemple :

$keys = ['nom', 'prénom', 'âge'];
$values = ['Dupont', 'Jean', 30];

$resultat = array_combine($keys, $values);

print_r($resultat);
// Résultat :
// Array
// (
//     [nom] => Dupont
//     [prénom] => Jean
//     [âge] => 30
// )

Conclusion

La manipulation des tableaux est une compétence fondamentale pour tout développeur PHP. En maîtrisant ces fonctions, vous serez capable de manipuler les données de manière plus efficace et d’écrire du code plus propre et maintenable. Que ce soit pour transformer, filtrer, fusionner ou réduire des tableaux, ces outils sont indispensables pour résoudre les problèmes quotidiens que vous rencontrerez dans vos projets. Prenez le temps de bien comprendre leur fonctionnement et de les intégrer dans votre boîte à outils de développeur.

Pour découvrir davantage de fonctions liées aux tableaux et enrichir vos connaissances en PHP, vous pouvez consulter la documentation officielle sur le site de PHP : https://www.php.net/manual/en/ref.array.php. Vous y trouverez une liste complète des fonctions disponibles pour manipuler et transformer les tableaux, avec des exemples et des explications détaillées.