PHP est-il asynchrone ?
Présentation par Frédéric Bouchery sur la programmation asynchrone en PHP lors d'un meetup AFUP Lorraine

Cette sketchnote a été réalisée lors d'un meetup AFUP Lorraine le 10 septembre 2025. Elle illustre la présentation "PHP est-il asynchrone ?" donnée par Frédéric Bouchery, qui explore les capacités asynchrones de PHP et leur évolution.
Contenu de la présentation
Frédéric Bouchery démystifie la programmation asynchrone en PHP en expliquant ce qui ne se déroule pas en même temps grâce au parallélisme. Il compare trois modes d'exécution : séquentiel (tâches linéaires 1-2-3-4), asynchrone (tâches 1-2 puis 4 pendant l'exécution de 3), et parallèle (tâches 1-2-4 simultanées pendant 3).
L'évolution historique montre que le traitement non bloquant existe depuis PHP 3 avec set() et stream_select(). Les coroutines arrivent avec PHP 5.5 via les générateurs, permettant de suspendre et reprendre l'exécution. PHP 8.1 introduit les Fiber pour un contrôle encore plus fin. L'event loop connecte Promises et Futur pour orchestrer ces mécanismes asynchrones.
En discussion : une RFC "true async" pour enchaîner rapidement ces mécanismes et simplifier la programmation asynchrone en PHP.