# Tableau associatif

> Tableau PHP dont les éléments sont indexés par des clés choisies (chaînes ou entiers arbitraires) plutôt que par une simple position numérotée.

- Auteur : Clément Hadrot
- Publié le : 2026-09-25
- Mis à jour le : 2026-09-25
- URL : https://wpmoderne.dev.wordpress-developpement.fr/lexique/tableau-associatif/

Un tableau classique range ses éléments à des positions 0, 1, 2… un tableau associatif, lui, leur donne des noms : on retrouve une valeur par son étiquette plutôt que par son rang, comme un classeur à onglets nommés plutôt qu'une pile de feuilles numérotées.

## Fonctionnement en PHP

PHP ne fait pas de distinction technique entre tableau indexé et tableau associatif : les deux sont le même type `array`, seule la nature des clés diffère. On le construit avec la syntaxe `['cle' => 'valeur']`, et on parcourt ses paires avec `foreach ($tableau as $cle => $valeur)`.

## Dans WordPress

C'est la structure de données la plus utilisée par les API du cœur : les arguments de `WP_Query`, les tableaux d'options renvoyés par `get_option()`, ou encore le tableau `$_POST` issu d'un formulaire sont tous des tableaux associatifs. Beaucoup de fonctions WordPress attendent d'ailleurs un tableau associatif d'arguments plutôt qu'une longue liste de paramètres positionnels.

## Exemple

```
$args = [
    'post_type'   => 'article',
    'numberposts' => 5,
    'orderby'     => 'date',
];
$articles = get_posts($args);
```

## À ne pas confondre avec

Un tableau associatif n'est pas un objet : il n'a ni méthodes ni visibilité de propriétés, même si l'écriture `$tableau['cle']` ressemble à un accès d'objet. Certaines fonctions modernes du cœur, comme celles de l'API REST, acceptent d'ailleurs indifféremment un tableau associatif ou un objet `stdClass` équivalent, ce qui explique pourquoi on croise parfois les deux formes dans une même réponse JSON décodée avec `json_decode()` selon l'option `associative` choisie.
