Documentation · Chapitre 02

Lire puis étendre
un projet réel.

L’exercice final vérifie que vous savez suivre l’architecture avant d’écrire une nouvelle fonctionnalité.

Aucun vocabulaire technique préalable n’est nécessaire. Chaque nouveau mot est expliqué avant d’être utilisé.

La méthode avant le code.

Ne commencez pas par créer des fichiers au hasard. Formulez d’abord la demande comme un trajet : le navigateur demande GET /about; une route doit reconnaître cette adresse; un contrôleur doit produire la réponse; le navigateur doit enfin recevoir un statut 200 et du HTML. Cette phrase devient votre plan de travail et votre plan de diagnostic.

ATELIER FINAL

Ajoutez une page À propos à une application classique.

  1. Créez un projet nommé architecture-lab.
  2. Examinez phpaml.json, public/, src/ et runtime/.
  3. Créez un contrôleur AboutController.
  4. Ajoutez GET /about dans src/routes/WebApp.php.
  5. Retournez une réponse HTML simple, puis vérifiez-la dans le navigateur.

CORRECTION GUIDÉE

Construisez dans l’ordre de la requête.

phpaml — zsh
aml create architecture-lab
cd architecture-lab
aml make:controller About
aml serve

La commande crée le fichier du contrôleur sous src/controllers. Ajoutez ensuite la route dans src/routes/WebApp.php et reliez-la à AboutController::index. Cette route doit être chargée avant que le navigateur puisse atteindre l’action.

phpaml — zsh
public function index(Request $request): Response
{
    return Response::html('<main><h1>About</h1><p>My first PHPAML page.</p></main>');
}

Ouvrez /about. Une réponse 200 prouve que le point d’entrée, le routeur, le contrôleur et la réponse fonctionnent ensemble. Une 404 indique généralement que la route n’est pas enregistrée; une 500 indique que le traitement a démarré puis échoué.

Procédez par petites preuves.

  1. 1
    Prouver le démarrage

    La page d’accueil doit encore répondre avant toute modification.

  2. 2
    Prouver la route

    Une 404 qui disparaît confirme que /about est maintenant reconnue.

  3. 3
    Prouver l’action

    Un contenu très simple confirme que le contrôleur est appelé.

  4. 4
    Améliorer ensuite

    Ajoutez présentation et données seulement lorsque le trajet minimal fonctionne.

Si la page ne fonctionne pas, vérifiez dans cet ordre.

1
Le serveur fonctionne-t-il ?

Le terminal doit encore afficher que PHPAML écoute une adresse locale.

2
Utilisez-vous la bonne adresse ?

Vérifiez le port et le chemin /about dans le navigateur.

3
La route est-elle déclarée ?

Une erreur 404 signifie souvent que l’adresse n’est pas reliée au contrôleur.

4
La classe et la méthode existent-elles ?

Le nom AboutController et la méthode index doivent correspondre exactement à la route.

5
Que dit l’erreur détaillée ?

En développement, l’écran d’erreur et le terminal indiquent le fichier et la ligne à examiner.

Questions de compréhension

VÉRIFIEZ VOTRE COMPRÉHENSION

Pourquoi le contrôleur est-il placé dans src/ plutôt que public/ ?

Afficher la réponse

Parce que le contrôleur est du code interne. Seul public/index.php doit être directement exposé au Web.

VÉRIFIEZ VOTRE COMPRÉHENSION

Pourquoi une route est-elle nécessaire ?

Afficher la réponse

Elle associe une méthode et un chemin HTTP à l’action qui doit les traiter.

EN RÉSUMÉ

Ce qu’il faut retenir

  • Vous savez suivre une requête complète.
  • Vous savez distinguer code public, applicatif et reconstructible.
  • Vous savez répartir modèle, vue et contrôleur.
  • Vous pouvez maintenant aborder la migration d’un ancien projet.