Votre guide dans les plaines du far-web

Formation développeur web


« Donne un poisson à un homme, tu le nourris pour un jour. Apprends-lui à pêcher, tu le nourris pour toujours. » Lao Tseu

Présentation

Mis à jour le

Nous allons voir dans ce chapitre de nombreuses notions qui sont utilisés notamment dans les frameworks PHP MVC.

Routeur

Mis à jour le

Un routeur est un des éléments essentiel au fonctionnement d'une application web moderne. Il permet de gérer des routes, un peu comme on aiguillerai la trajectoire d'un train sur un réseau ferré. 

(image visible sur la plateforme de formation)


Habituellement, lorsqu'une requête arrive sur un serveur web, le serveur va appeler…

~~ Fin de l'extrait ~~

Le modèle MVC

Mis à jour le

La grande majorité des frameworks PHP sont organisés autour d'une implémentation des design patterns Modèle / Vue / Contrôleur (on parle alors de MVC). Ce choix technique s'est avéré très adapté pour la réalisation d'applications web en mode client/serveur.

Mais c'est quoi le MVC ?

Le MVC consiste…

~~ Fin de l'extrait ~~

La temporisation de sortie

Mis à jour le

Les fonctions ob_start() et ob_get_clean() sont primordiales pour la création de vues souples. L'idée, c'est qu'au lieu d'appeler simplement un fichier à l'aide d'une inclusion standard (require, include,...), on va faire en sorte de retourner le rendu de la vue sous forme de chaîne de caractère…

~~ Fin de l'extrait ~~

La réponse du framework : statut, chaîne HTML

Mis à jour le

Un des rôles du contrôleur, c'est de construire la réponse HTTP qui va être renvoyée au client (voir les images précédentes). On va donc lui rajouter certains éléments pour qu'il puisse mieux remplir ce rôle : 

  1. un attribut content : contiendra le corps de la réponse, la payload (HTML,…
~~ Fin de l'extrait ~~

Connecter le modèle à la base de données

Mis à jour le

Maintenant que nous avons une vue et un contrôleur améliorés, nous allons intégrer PDO à notre framework, afin de pouvoir travailler avec une base de données.

Pour ce faire, on va passer par la création d'une classe supplémentaire : Database.

Cette classe sera spécialisée dans la connexion avec…

~~ Fin de l'extrait ~~