Programmation PHP/Symfony 3
Créer un projet
Voilà comment créer un projet avec Symfony 3, sorti en 2015
Arborescence du projet
- Projet : arborescence incluant le framework et le code source de sa propre application.
- app : applications.
- config : fichiers .yml de paramétrage global. Les contenus des fichiers suffixés "-dev.yml" ou "-prod.yml" surchargent ceux des non suffixés selon le contexte. Ce qui permet par exemple d'utiliser des mots de passe différents en local et en production.
- Resources\views : templates .twig.
- bin : binaires.
- src : code source ("bundles" de l'utilisateur).
- vendor : bibliothèques des dépendances ("bundles" téléchargés).
- web : site accessible en HTTP. Il contient les "assets" : les fichiers CSS et JavaScript.
- app : applications.
Pour créer un projet, il existe plusieurs techniques au choix :
Composer.phar
Avec Composer : php composer.phar create-project symfony/framework-standard-edition MonProjet1
.
Symfony.phar
Créer l'installeur par ces commandes ou bien en téléchargeant le fichier à l'adresse qui y figure :
- Sous Linux
- cURL :
curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony
symfony new MonProject1
- cURL :
- Sous Windows :
php -r "readfile('https://symfony.com/installer');" > symfony.phar
.php symfony.phar new MonProject1
GitHub
Avec GitHub : https://github.com/symfony/symfony.
Lancer le projet
Mode dev
Serveur Web intégré
Il existe un composant Symfony pour lancer le projet sans configurer son serveur Web (Apache, Nginx ou autre) :
composer require symfony/web-server-bundle
Une fois le nouveau projet créé, il suffit de suivre les consignes affichées dans la console :
5.15 MB/5.15 MB ============================================================ 100% Preparing project... OK Symfony 3.1.4 was successfully installed. Now you can: * Change your current directory to C:\Program Files (x86)\EasyPHP\eds-www\MonProject1 * Configure your application in app/config/parameters.yml file. * Run your application: 1. Execute the php bin/console server:run command. 2. Browse to the http://localhost:8000 URL.
L'URL permet d'accéder à toutes les pages du site grâce au serveur Web intégré à Symfony, tant que la console shell est active.
Sous Windows, pour lancer le projet rapidement et facilement, on peut créer un fichier MonProjet1.cmd :
cd "C:\Program Files (x86)\EasyPHP\eds-www\MonProject1" start http://localhost:8000/ php bin\console server:run pause
La page de bienvenue doit s'ouvrir ensuite dans le navigateur Web par défaut.
Pour rendre le site web accessible à d'autres machines, le lancer avec son IP, par exemple :
php bin/console server:start 192.168.1.8:80
Cela nécessite d'arrêter le serveur Web qui prenait le port 80.