- PHP 100%
| data | ||
| exercices | ||
| postman | ||
| public | ||
| refactoring | ||
| docker-compose.yml | ||
| index.php | ||
| php.ini | ||
| README.md | ||
Jour 1 : Architecture Web, MVC & API
ESGI, Bachelor 2
Aujourd'hui vous fabriquez votre première API. Elle sera moche, elle tiendra dans un fichier, et elle marchera.
Récupérer les fichiers
git clone ssh://git@forge.peauc.dev:10022/peauc/esgi_php_api.git
cd esgi_php_api
ls
Vous devez voir data, public, refactoring, exercices, postman et
docker-compose.yml.
Toutes les commandes ci-dessous se lancent depuis ce dossier.
Chaque matin de la semaine, commencez par récupérer le point de départ du jour :
git pull
Mettre en place l'environnement
Il y a trois façons de faire tourner du PHP, et un plan B. Essayez-les dans l'ordre et arrêtez-vous dès que l'une fonctionne.
1. Docker (à privilégier)
docker compose up -d
Ouvrez ensuite http://localhost:8080/public/index.php
Le -d lance le serveur en arrière-plan et vous rend la main dans le terminal. Pour
l'arrêter en fin de journée : docker compose down.
2. PHP installé sur la machine
Vérifiez d'abord :
php --version
Si une version s'affiche :
php -S localhost:8080
Même adresse : http://localhost:8080/public/index.php
3. XAMPP portable
Si vous n'avez pas les droits administrateur, XAMPP en version portable fonctionne depuis
une clé USB. Copiez le contenu de ce dépôt dans un dossier esgi à l'intérieur de
htdocs, démarrez Apache, puis ouvrez http://localhost/esgi/public/index.php
4. Rien ne marche
Levez la main. On règle ça ensemble, et en attendant vous travaillez sur le poste du voisin. Personne ne reste bloqué.
Vérifier que tout est bon
Ouvrez d'abord la racine :
http://localhost:8080/
Vous devez voir une page qui confirme que votre environnement fonctionne, avec des liens vers la suite. Puis vérifiez que cette adresse renvoie bien du texte au format JSON :
http://localhost:8080/public/index.php
Si vous voyez le code PHP s'afficher au lieu du résultat, c'est que le fichier n'est pas exécuté par un serveur : vous avez probablement ouvert le fichier directement depuis l'explorateur. Repassez par une des méthodes ci-dessus.
Contenu du dossier
| Chemin | À quoi ça sert |
|---|---|
index.php |
Page d'accueil de vérification. Ne pas modifier. |
data/trottinettes.php |
Le jeu de données. Ne pas modifier. |
public/index.php |
Votre API. C'est ici que vous travaillez. |
refactoring/api_trottinettes.php |
Un script existant, pour l'exercice de l'après-midi. |
exercices/axe1-php.md |
Énoncé du matin, 11h15. |
exercices/axe2-http.md |
Énoncé de l'après-midi, 14h00. |
exercices/axe3-refactoring.md |
Énoncé de fin de journée, 15h30. |
postman/ |
Collection à importer dans Postman. |
Programme
| Horaire | |
|---|---|
| 9h45 | Accueil et programme de la semaine |
| 10h15 | Mise en place de l'environnement |
| 11h15 | PHP : ce qu'il faut pour une API |
| 12h30 | Pause déjeuner |
| 14h00 | Du PHP au HTTP : répondre en JSON |
| 15h30 | Lire et réparer le code des autres |
| 16h30 | Débrief |