Les interfaces
En Programmation Orientée Objet et y compris en PHP, une interface est une sorte de modèle de classe que l'on utilise principalement lorsque l'on code quelque chose qui va être utilisé par d'autres développeurs / développeuses, par exemple une librairie ou un framework.
Cela permet d'obliger les gens qui vont l'utiliser à respecter certaines règles dans leur code pour être certain·e que cela fonctionne normalement.
En pratique cela ressemble à ça :
Pour pouvoir implémenter (le mot clé en PHP pour utiliser une interface c'est implements) cette interface et fonctionner avec le système, l'authentificateur devra contenir les méthodes suivantes :
public function register(User $user)public function login(string $email, string $password)public function resetPassword(string $email)
Un exemple d'authentificateur qui va fonctionner :
Et un qui ne fonctionnera pas :