Pouvoir développer et réaliser une idée est un avantage pour les développeurs. Mais faut-il encore avoir des idées de projet à réaliser. Tu as les compétences, tu souhaites les mettre en pratique mais aucune idée de projet à réaliser ne te viens en tête, c’est embêtant.
Se creuser la tête durant de longue heures en essayant de trouver une bonne idée de projet, un projet qui est utile au monde entier mais rien ne vient. Tu vas donc chercher sur internet, regarder des vidéos pour savoir comment trouver une idée de projet et finalement, tu tombes une nouvelle fois dans le piège de YouTube. Tu te retrouves à enchainer les vidéos qui n’ont rien à voir avec tes recherches de bases. Je connais bien le problème 😉
Pour éviter que tu passes des heures à trouver une idée de projet, je te montre dans cet article une liste de projets que tu peux réaliser en PHP. Et en plus je les ai classés par niveau de difficulté afin que tu puisses plus facilement en choisir un qui te correspond. A la fin de l’article je t’explique comment tu peux trouver facilement de nouvelles idées de projets PHP (et qui seront utiles) 😉

Difficulté : Facile
La Todo List
Le mini projet de Todo List est un projet assez commun lorsque l’on débute dans un langage. Généralement, lorsque j’apprends un nouveau langage, un nouveau Framework, j’essaye de faire ce projet avec.
Si tu ne connais pas le principe de Todo List, c’est une liste de choses à faire. Le principe est de rajouter des éléments (texte) dans une liste et pouvoir les supprimer lorsque la chose est faite

Avec ce projet, tu vas pouvoir maitriser les concepts de formulaire, de tableaux, de bases de données ou de cookies.
En effet, pour stocker les choses à faire, tu peux soit utiliser une base de données soit utiliser les cookies. Les cookies te permettent de stocker des informations sur le navigateur de l’utilisateur. En revanche, s’il vide son cache navigateur, les tâches disparaitront.
C’est un bon petit projet pour débuter.
Un jeu de morpion ou de dames
Tu peux aussi réaliser un petit jeu de morpion ou de dame. Certes, il est plus agréable de réaliser un jeu avec du JavaScript (pour le coté instantané, sans rechargement) mais le faire en PHP t’apprendra aussi beaucoup de choses. Et notamment les tableaux multidimensionnels.
Pour faire une grille de jeu (soit de morpion soit de dame), tu vas devoir utiliser les tableaux multidimensionnels et plus précisément à 2 dimensions.
La première dimension de ton tableau représente tes lignes et la deuxième dimension, les colonnes.
Pour créer ta grille de jeu, tu vas devoir faire quelque chose comme ça :
$grille = []; for($i = 0; $i = 2; $i++){ for($j = 0; $j = 2; $j++){ $grille[$i][$j] = 0; } }
Ici on boucle 3 fois pour les lignes et 3 fois pour les colonnes. Tu auras donc une grille de 9 cases. Si tu souhaites faire une grille plus grande, tu as simplement à boucler sur un nombre plus grand (exemple : 10×10).
J’ai ensuite initialisé chaque index du tableau à « 0 ».
Tu peux définir que « 0 », c’est une case libre, « 1 » représente les croix (pour un jeu de morpion) et « 2 » représente les ronds.
Par la suite, tu vas devoir parcourir ton tableau multidimensionnel, afficher une croix si c’est un 1, un rond si c’est un 2 et une case vide si c’est un 0.
Tu peux mettre un bouton radio dans les cases vide pour que l’utilisateur puisse indiquer que c’est dans cette case qu’il souhaite positionner sa croix ou son rond. N’oublie pas un bouton de validation pour que l’utilisateur puisse valider son choix.
Ce projet te permettra, en plus des tableaux, de travailler sur les formulaires.
Difficulté : Moyenne
Passons aux idées de projets PHP un peu plus compliqué.
Un panneau d’administration
Dans de nombreux sites web, on va retrouver des panneaux d’administration. C’est ce que l’on appelle le back end. Un endroit où les administrateurs du site peuvent tout gérer : les utilisateurs, les produits, les commandes, les articles, etc.
Tous ces éléments vont être persister en base de données. Il existe 4 types d’opérations possibles sur ces éléments :
- La création (Create)
- La lecture (Read)
- La mise à jour (Update)
- La suppression (Delete)
Ces 4 opérations sont désignées par l’acronyme CRUD.
Tu peux donc te lancer dans la réalisation d’une interface d’administration, gérer des utilisateurs, des produits, des commandes, etc, …
Ainsi, tu peux concevoir une base de données relationnelles, y ajouter des données fictives et développer toute la partie d’administration.
Sur internet, tu trouveras des générateurs de données MySQL. Ils te génèrent des noms, prénom, adresse emails, de façon aléatoire.
A toi de développer les différents formulaires pour l’ajout, la modification, la suppression et de créer des vues pour pouvoir afficher les différents éléments de ta base de données.
Tu devras aussi utiliser les bonnes méthodes de requêtes HTTP (GET, POST, PUT, DELETE, …) en fonction de l’opération que tu réalises.
La méthode GET est utilisé pour récupérer des éléments (pour la partie lecture des données).
La méthode POST permet de créer une ressource en base de données et la méthode PUT de la modifier.
DELETE, comme tu dois t’en douter, te permets de supprimer la ressource.
Habitue-toi à utiliser correctement ces méthodes dès le début et à bien comprendre le rôle de chacune d’entre elles.
Enfin, tu peux rajouter une partie de connexion, à ton interface d’administration, afin que les personnes non habilitées ne puissent pas y accéder. Tu travailleras ainsi sur la partie sécurité, la gestion des mots de passe, les principes de hachage / cryptage / salage, et l’utilisation des sessions.
Utilisation d’API
Sur le web, on voit de plus en plus d’API naitre. API signifie « Application Programming Interface » ou en français « interface de programmation d’application ».
Les API mettent à disposition un ensemble d’URL qui retournent des ressources (données) dans un format spécifique, généralement du JSON ou XML. Les API permettent d’avoir accès à des données que d’autres personnes ont récoltés et de pouvoir les utiliser pour créer de nouvelles choses.
Il existe pleins d’API différentes, voici quelques exemples :
- Pour l’immobilier : prix de vente des maisons sur les 5 dernières années
- Météo : récupérer la météo dans une ville en particulier
- API de Google Maps : permet d’utiliser des cartes
- Sur les cocktails : permet de récupérer des listes de cocktails, avec les ingrédients, les recettes etc
Il en existe des milliers, voire des millions, pour à peu près tout et n’importe quoi.
Tu vas pouvoir consommer ces API pour développer de nouvelles applications web.
Pour faire des appels d’API en PHP, le plus facile est d’utiliser la bibliothèque cURL. Cette librairie te permettra de faire des appels de différents types (GET, POST, PUT, …) et de récupérer le résultat.
Trouve une API dans un domaine qui te plait et créer un projet autour de ça.
Voici quelques exemples de projets que j’ai fait à l’aide d’API
- Détermination du prix de l’immobilier au m² d’une ville. Grâce aux prix de ventes des maisons sur les 5 dernières années, j’ai pu déterminer un prix au m² par ville.
- Une simple page qui indique si demain sera férié ou non. Le gouvernement français met à disposition une API qui liste les jours fériés.
- Création d’un site qui affiche des cocktails et leurs recette / possibilité de filtrer par nom de cocktail, par cocktail sans alcool …


Tu peux trouver pleins de petits projets amusant à réaliser à l’aide d’API, le plus dur c’est de trouver l’API à utiliser et de bien comprendre comment elle fonctionne. Certaines demandent d’utiliser des tokens d’authentification. Mais une fois trouvée, ce n’est que du plaisir !
Difficulté : Avancé
A ce stade tu devrais commencer à avoir un bon niveau en PHP, les difficultés ne te font plus peur, tu es prêt à faire des projets plus poussés
Blog avec une gestion des images
C’est donc l’occasion de créer un blog pour expliquer les étapes de ton apprentissage, montrer des bouts de code, écrire quelques articles avec de belles images, etc …
Créer un blog est un projet conséquent. Il va y avoir beaucoup de choses à gérer :
- Gestion des accès utilisateur / admin
- Gestion d’une base de données
- Gestion de la mise en forme des articles
- Ajout d’image et stockage des images
- Toutes les contraintes techniques que tu rencontreras tout au long du projet
Créer un blog est un projet très complet qui te permettra de voir tous les aspects du PHP mais aussi t’obliger à travailler la partie front (HTML / CSS) pour avoir quelque chose de présentable.
Si tu ne veux pas faire de blog sur le développement web, tu peux en faire un sur un domaine qui te plait, le principe reste le même. Après quelques années, si tu as beaucoup de trafic sur ton site, tu pourras même le monétiser (pub, affiliation, placement de produit etc …)
Le blog te permettra aussi (si tu souhaites travailler tes compétences dans ce domaine) d’augmenter tes compétences dans le référencement. Le référencement est le fait travailler ton positionnement dans les résultats des moteurs de recherche. C’est-à-dire essayer de se positionner dans les meilleurs résultats de Google.
Cette partie n’est pas forcément lié au PHP mais est très importante dans le blogging.
Un forum
Un forum est une bonne occasion de mettre pratique tes compétences en PHP mais aussi une bonne occasion de créer une communauté.
Tu dois surement connaitre certains forums dans le monde du développement. Tu auras surement vu, qu’il y a de grosses communautés sur ces forums. De plus, ces forums ont beaucoup de valeurs pour les développeurs car c’est ici que l’on va pouvoir échanger avec les autres sur ces blocages, ces projets, ces réussites, etc…
Alors pourquoi ne pas créer un forum sur un domaine particulier ? Ça peut être sur le développement mais aussi sur n’importe quel autre domaine. Du moment qu’il y ait assez de gens intéressés par ce domaine.
Coté PHP, la création d’un forum te fera voir beaucoup de facettes :
- Gestion des comptes utilisateurs et de leurs privilèges (utilisateur standard, administrateur, modérateur, …)
- Gestion d’une base de données
- Gestion de la sécurité : contrôler les contenus postés pour empêcher les injections SQL, les failles XSS, etc …
- Utilisation des sessions, des cookies
La création d’un forum est aussi (comme le blog) un projet complexe à réaliser mais qui te fera voir et comprendre beaucoup de choses.
Lorsque j’ai appris le PHP, mon premier gros projet, était un mélange de blog et de forum. C’était un site sur lequel les gens pouvaient poster les rêves qu’ils venaient de faire la nuit. Les lecteurs avaient la possibilité de voter et commenter. C’était un peu le même principe que le site « vie de merde » si tu connais.
C’est lors de la réalisation de ce site que j’ai appris énormément de choses sur le PHP.
Site e-commerce
Et si on se faisait un peu d’argent avec un projet de e-commerce ?
Aujourd’hui de plus en plus de boutiques en ligne voient le jour. Beaucoup de boutiques se numérisent et certaines sont carrément 100% numériques.
Tu peux trouver un produit à vendre, te mettre d’accord avec un fournisseur et vendre les produits sur la boutique en ligne que tu auras entièrement développée.
Lors de la réalisation d’un site de e-commerce, tu pourras voir les aspects suivant :
- Gestion d’un panier
- Gestion des comptes utilisateurs
- Gestions des commandes / retours / livraisons
- Utilisation d’API de paiements, de livreur (colissimo, mondial relay, …)
- Gestion de la sécurité
- Gestion des images
- Gestion d’un back office
Un projet de e-commerce développer à 100% en partant de rien est un projet d’envergure qui te demandera beaucoup de temps.
Il faudra aussi qu’il soit de qualité. Personne n’aime se retrouver sur un site à moitié fini, pleins de bug et qui n’inspire pas confiance.
Pour ce type de projet, je te conseille de passer par des plateformes telles que Stripe ou Paypal pour gestion des paiements. Ce n’est pas la peine de réinventer la roue.
Il existe aussi des bibliothèques ou bundle prêt à l’emploi pour des sites de e-commerce. On peut notamment citer Sylius
D’autres projets
Partir d’un projet existant
Si tu n’as pas trop d’idées et que tu ne souhaites pas partir de 0, tu peux partir d’un projet existant.
Vas faire un tour sur GitHub, recherche des projets par langage (PHP), trouve un projet qui te plait, et sur lequel tu pourrais ajouter des choses.
Clone ce projet sur ton ordinateur et le tour est joué. Tu peux commencer à développer à partir de cette base. Par la suite, tu pourras proposer tes améliorations au développeur du projet par le biais d’une pull request (Git).
Dans ces types de projets, la difficulté réside dans le fait que tu pars d’un code déjà existant et que tu ne connaisses pas le niveau de complexité du code. Si tu débutes et que tu tombes sur du code orienté objet avec une architecture MVC, tu ne seras peut-être pas trop à l’aise.
Mais c’est un très bon exercice pour apprendre. Lorsque j’ai commencé en alternance, je me suis retrouvé seul développeur (l’ancien était parti avant mon arrivée). J’ai dû reprendre son code. Il avait utilisé un framework JS que je ne connaissais absolument pas (Backbone JS). De plus, je n’avais jamais utilisé de framework avant et j’avais postulé pour du PHP…
Mais j’ai commencé à me mettre la tête dedans, faire des recherches, tester des choses et j’ai vite appris.
Résoudre un problème
Est-ce que tu as déjà analysé le service / produit que vendent les entreprises qui se font le plus d’argent ?
Ils répondent tous à un problème.
Uber répond à un besoin de se déplacer d’un point A à un point B (le taxi mais sans les inconvénients des taxis)
Uber eat répond au besoin de manger à toute heure sans sortir de chez soi.
Amazon répond au besoin d’acheter n’importe quel produit au meilleur prix et le recevoir en quelque jours.
Si tu réponds à un besoin, que tu trouves une solution à une problématique que plusieurs personnes ont, ton site fonctionnera.
Tu peux ainsi développer une application web qui résout un de tes problèmes. Par exemple, si tu es étudiant, et que tu n’as pas envie de prendre tes cours à la main, on pourrait imaginer quelque chose qui enregistre l’audio du cours et le retranscrit en texte. Il existe des API pour ça. Tu pourras ainsi relire le cours plus tard ou même le refiler à tes collègues.
Bon, il ne faudra pas le dire aux prof mais tu comprends le principe 😉
Des idées, comme ça tu peux en trouver pleins. Ecoutes les gens autour de toi. Dès qu’une personne dit « c’est chiant de … », « j’aimerais bien pouvoir faire … », « je n’arrive pas à … », il y a une opportunité de projet.
Du moment qu’il répond à un besoin / une problématique, il y a quelque chose à faire.
Idées de projet PHP : ce qu’il faut retenir
Lorsque l’on débute dans la programmation, notre seule envie c’est de développer. Développer de nouveaux projet, tester des choses, apprendre, pratiquer.
Mais pour cela, faut-il encore avoir des idées de projet à réaliser. Et c’est là que ça pose problème.
Pourtant des projets il en existe des milliers, il faut juste avoir un peu d’inspiration et regarder autour de soi pour comprendre ce qu’il est possible de faire.
De plus, il faut faire attention à ne pas se lancer dans la réalisation d’un projet gigantesque dès le début et être dégouté du code parce qu’on ne s’en sort pas.
Il faut y aller étape par étape. Réaliser des projets simple au début pour pouvoir arriver à la fin et être fier de soi. Et augmenter en difficulté petit à petit, jusqu’à être capable de réaliser tout et n’importe quoi.
Dans cet article je t’ai donnée quelques idées de projets PHP. A toi de les réaliser ou de développer des variantes de ces projets.
Pense à observer ce qui t’entoure, comprendre les problématiques des gens pour trouver des solutions techniques à leurs problèmes et des idées de nouveaux projets.
Tu peux écrire dans les commentaires, les projets que tu as réalisés ou souhaite réaliser pour donner des idées aux autres.