PHP — Tableaux et manipulation de données
Tableaux indexés, associatifs, fonctions de tableau
Concepts Théoriques
Les tableaux sont la structure de données la plus utilisée en PHP. Quand vous récupérerez des articles depuis la base de données, vous recevrez un tableau de tableaux associatifs. Maîtriser les tableaux est donc indispensable.
Tableaux indexés
Un tableau indexé est une liste ordonnée, numérotée à partir de 0 :
$tags = ["PHP", "MySQL", "Laravel"];
$tags[0] donne "PHP", $tags[1] donne "MySQL". count($tags) donne 3.
Pour ajouter un élément : $tags[] = "JavaScript"; (ajoute à la fin).
Tableaux associatifs
Un tableau associatif utilise des clés nommées au lieu de numéros — comme un objet JavaScript :
$article = ['title' => 'Mon article', 'author' => 'Moussa', 'views' => 150];
On accède avec la clé : $article['title'] donne "Mon article".
Tableaux multidimensionnels
Un tableau qui contient d'autres tableaux — c'est ce que vous recevrez de la base de données :
$articles = [ ['title' => 'Article 1', 'views' => 100], ['title' => 'Article 2', 'views' => 250] ];
On accède avec : $articles[0]['title'] donne "Article 1".
Fonctions de tableau essentielles
- count($arr) — nombre d'éléments
- in_array($value, $arr) — vérifier si une valeur existe
- array_key_exists($key, $arr) — vérifier si une clé existe
- array_push($arr, $value) — ajouter à la fin (ou $arr[] = $value)
- array_merge($arr1, $arr2) — fusionner deux tableaux
- array_map($callback, $arr) — transformer chaque élément
- array_filter($arr, $callback) — garder seulement les éléments qui passent le test
- usort($arr, $callback) — trier avec une fonction personnalisée
- implode(', ', $arr) — joindre en string ("PHP, MySQL, Laravel")
- explode(',', $string) — découper une string en tableau
- array_slice($arr, $offset, $length) — extraire une portion
> Bonne pratique : Utilisez array_map et array_filter au lieu de boucles foreach quand vous transformez ou filtrez des données. C'est plus lisible et ça se rapproche de l'approche Laravel (Collections).