W3docs

join()

La fonction join() en PHP joint les éléments d'un tableau en une chaîne. Elle est aussi connue sous le nom de fonction implode().

Introduction

La fonction join() en PHP joint les éléments d'un tableau en une seule chaîne de caractères, en plaçant un séparateur (souvent appelé la « colle ») entre chaque élément. C'est un alias de implode() — les deux fonctions sont identiques, vous pouvez donc utiliser celle dont le nom vous semble le plus lisible dans votre code.

Cette page couvre la syntaxe de join(), les deux façons de l'appeler, ce qui se passe avec des valeurs de types mixtes ou imbriquées, ainsi que les erreurs courantes à éviter.

Syntaxe

join(string $separator, array $array): string
join(array $array): string
  • $separator — la chaîne de colle insérée entre chaque élément. Si vous l'omettez, une chaîne vide "" est utilisée.
  • $array — le tableau dont les valeurs sont jointes. Seules les valeurs sont utilisées ; les clés du tableau sont ignorées.

La fonction retourne la chaîne jointe.

Ordre des arguments : Puisque join() est un alias de implode(), l'ordre historique « séparateur en premier, tableau en second » est celui que vous devriez utiliser. La forme ancienne où le tableau venait en premier a été supprimée en PHP 8.0.

Exemple de base

php— editable, runs on the server

Cela affiche :

apple, banana, orange

Ici join() colle les trois valeurs ensemble avec ", " entre elles. Le résultat est stocké dans $fruit_string et affiché avec echo.

Joindre sans séparateur

Si vous appelez join() avec uniquement le tableau, les éléments sont concaténés directement sans rien entre eux :

<?php

$parts = ["2024", "06", "21"];
echo join($parts);        // 20240621
echo "\n";
echo join("-", $parts);   // 2024-06-21

Conversion des valeurs

Chaque valeur est convertie en chaîne avant d'être jointe, selon les règles normales de conversion de chaînes de PHP :

<?php

$mixed = [1, 2.5, true, false, null, "text"];
echo join("|", $mixed);

Cela affiche :

1|2.5|1|||text

Notez que true devient "1", tandis que false et null deviennent des chaînes vides — c'est pourquoi vous voyez des séparateurs | consécutifs. Faites attention en joignant des tableaux qui peuvent contenir des booléens ou null.

Construction de sorties CSV ou HTML

join() est pratique chaque fois que vous devez aplatir une liste en texte — chaînes de requête, lignes CSV, ou une liste d'attributs HTML :

<?php

$row = ["Alice", "[email protected]", "Admin"];
echo join(",", $row);        // Alice,[email protected],Admin
echo "\n";

$classes = ["btn", "btn-primary", "active"];
echo '<button class="' . join(" ", $classes) . '">OK</button>';

Pièges courants

  • Les tableaux multidimensionnels ne fonctionnent pas. join() n'aplatit qu'un seul niveau. Un élément tableau imbriqué est converti en la chaîne littérale "Array" et génère un avertissement. Aplatissez d'abord les données.
  • join() est l'inverse de explode(). Utilisez explode() pour diviser une chaîne en tableau, et join()/implode() pour la reconstituer.
  • Les clés sont ignorées. Les clés numériques et string sont toutes deux ignorées ; seules les valeurs sont jointes, dans leur ordre interne.

Fonctions associées

  • implode() — fonction identique sous son nom principal.
  • explode() — divise une chaîne en tableau (l'opération inverse).
  • str_split() — divise une chaîne en morceaux de longueur fixe.

Pratique

Pratique
Quelle est la fonction principale de la fonction implode() en PHP ?
Quelle est la fonction principale de la fonction implode() en PHP ?
Was this page helpful?