{}
parser.php
Informatique · Analyse syntaxique

Qu'est-ce
qu'un Parser ?

Un parser analyse un flux de texte brut et en extrait des données structurées — c'est le cœur de tout interpréteur, compilateur ou API moderne.

Tokenisation Analyse syntaxique AST JSON / XML / CSV pipe (.gapit)
token-stream.js
Entrée brute →
Token stream →
01

Définition

Concept

Un parser (ou analyseur syntaxique) est un programme qui lit un texte structuré selon une grammaire définie et en extrait des données structurées utilisables par un programme.

Il fonctionne en deux phases : d'abord la tokenisation (découpage en unités lexicales), puis l'analyse syntaxique (construction d'un arbre de représentation).

ROOT
OBJETobject
"name"key  → "John"string
"age"key  → 30number
"active"key  → truebool
⚡ Un parser ne comprend pas le texte — il le décompose selon des règles syntaxiques strictes. Toute violation de ces règles produit une erreur.
02

Parser JSON

PHP

Le parser JSON transforme une chaîne de caractères en structure PHP (tableau associatif ou objet). En PHP, json_decode() fait tout le travail.

php
// Chaîne JSON brute
$json = '{"name":"John","age":30,"active":true}';

// Parser → tableau associatif PHP
$data = json_decode($json, true);

// Accès aux valeurs
echo $data["name"];    // John
echo $data["age"];     // 30

// Ré-encoder en JSON
echo json_encode($data, JSON_PRETTY_PRINT);
✅ Toujours vérifier json_last_error() === JSON_ERROR_NONE après un json_decode() pour détecter un JSON malformé.
03

Parser fichier pipe (.gapit)

PHP · Pipe

Un fichier pipe utilise le caractère | comme séparateur de colonnes. En PHP, explode() découpe la ligne selon ce délimiteur.

Entrée brute :
"ALICE|28|Paris|Dev" → ALICE| 28| Paris| Dev
php
// Ligne d'un fichier .gapit
$ligne = "ALICE|28|Paris|Développeur";

// Parser → tableau indexé
$cols = explode("|", $ligne);

echo $cols[0];   // ALICE
echo $cols[1];   // 28
echo $cols[2];   // Paris

// Parser un fichier entier
$lines = file('data.gapit', FILE_IGNORE_NEW_LINES);
foreach ($lines as $l) {
    $row = explode("|", $l);
    // traiter $row…
}
04

Types de parsers

Référence
📋
JSON Parser
Transforme une chaîne JSON en structure de données native. Universel dans les APIs REST.
json_decode() · JSON.parse()
🌐
HTML Parser
Analyse le balisage HTML et construit le DOM. Base de tous les navigateurs web.
DOMDocument · BeautifulSoup
📄
XML Parser
Lit les documents XML hiérarchiques, valide contre un schéma XSD si nécessaire.
SimpleXML · DOMDocument
📊
CSV Parser
Découpe les lignes selon le délimiteur virgule/point-virgule. Standard tableur.
fgetcsv() · Papa Parse
⚡
Pipe Parser (.gapit)
Séparateur | pour les fichiers de données structurées à haute performance.
explode("|", $ligne)
🔧
Markdown Parser
Convertit du texte Markdown en HTML rendu. Utilisé dans les CMS et la documentation.
Parsedown · Marked.js
ℹ️ Tous les parsers partagent la même logique : lire → tokeniser → valider → construire une structure. Seuls le format et les règles de grammaire diffèrent.
05

Outil — Parser en direct

Interactif

Sélectionnez un format, modifiez l'entrée, le résultat se met à jour en temps réel :

live Parser interactif
// Résultat ici…
↑