Une version très différente des précédentes
Si vous avez déjà utilisé les versions antérieures de symfony, la version 4 de ce framework est très différente. Le framework a été complétement répensé pour l'expérience développeur, dans le but de développer des feature plus vite et plus facilement que jamais.
De plus, symfony 4 peut être utiliser pour remplir divers role :
- Besoin d'un micro framework pour une tout petit site ? Symfony est configuré de base comme un micro framework : juste ce dont vous avez besoin pour commencer
- Besoin de sortie l'atillerie lourde ? Vous pouvez ajouter des composants à symfony pour gérer tout ce dont vous avez besoin
- Besoin de quelque chose entre deux ? Ajoutez simplement les composants dont vous avez besoin !
Symfony est donc un outil idéal pour vos projets, quelque soit leur taille.
De plus, la version 4 est la plus rapide du framework, et l'un des plus rapide des framework php
Préparer sont ordinateur pour symfony
Installer composer
Avant de pourvoir utiliser symfony, nous allons devoir utiliser composer
Composer qu'est ce que c'est ?
Composer est un gestionnaire de paquet pour PHP.
Un gestionnaire de pacquet, permet de publier, importer et utiliser des modules créer par d'autres utilisateurs sur packagist.
C'est d'ailleurs sur cette plateforme que sont hébergé tous les packets de symfony, et à peu près toutes les librairies dont vous aurez besoin.
Installer sur windows
Suivez les instructions à cette adresse : Installation Composer
Pas de soucis pour vous, l'installeur va s'occuper de tout installer sur votre pc
Installer sur mac
Dans un premier temps installez brew
Ensuite dans votre terminal tapez :
brew install composer
Toujours dans votre teminal tapez
composer
Ce qui devrait nous donner quelque chose du genre :
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.8.0 2018-12-03 10:31:16
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
-d, --working-dir=WORKING-DIR If specified, use the given directory as working directory.
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Available commands:
about Shows the short information about Composer.
archive Creates an archive of this composer package.
browse Opens the package's repository URL or homepage in your browser.
check-platform-reqs Check that platform requirements are satisfied.
clear-cache Clears composer's internal package cache.
clearcache Clears composer's internal package cache.
config Sets config options.
create-project Creates new project from a package into given directory.
depends Shows which packages cause the given package to be installed.
diagnose Diagnoses the system to identify common errors.
dump-autoload Dumps the autoloader.
dumpautoload Dumps the autoloader.
exec Executes a vendored binary/script.
global Allows running commands in the global composer dir ($COMPOSER_HOME).
help Displays help for a command
home Opens the package's repository URL or homepage in your browser.
i Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
info Shows information about packages.
init Creates a basic composer.json file in current directory.
install Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
licenses Shows information about licenses of dependencies.
list Lists commands
outdated Shows a list of installed packages that have updates available, including their latest version.
prohibits Shows which packages prevent the given package from being installed.
remove Removes a package from the require or require-dev.
require Adds required packages to your composer.json and installs them.
run-script Runs the scripts defined in composer.json.
search Searches for packages.
self-update Updates composer.phar to the latest version.
selfupdate Updates composer.phar to the latest version.
show Shows information about packages.
status Shows a list of locally modified packages, for packages installed from source.
suggests Shows package suggestions.
u Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
update Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
upgrade Upgrades your dependencies to the latest version according to composer.json, and updates the composer.lock file.
validate Validates a composer.json and composer.lock.
why Shows which packages cause the given package to be installed.
why-not Shows which packages prevent the given package from being installed.
Si vous souhaitez avoir un setup plus complet, vous pouvez trouver des informations sur ce gist
Si vous êtes à l'aise avec docker, vous pouvez utiliser ce starter, qui vous donnera des php / apache / mysql
Installer sur linux
Suivez la procédure standard de décrite sur le site de composer Si vous êtes sur linux, vous ne devriez pas trop galérer ;)
Créer un projet symfony
Pour créer le projet symfony, nous allons utiliser composer
Rendez vous via la ligne de commande dans le dossier où vous souhaitez créer le projet
Lancez cette commande :
composer create-project symfony/skeleton nomdevotreprojet
Derrière, cette commande clone le repository symfony/skeleton et installe les dépendences via composer install
Parfait ! Notre projet est installé
Rendez vous dans le dossier qui a été créé et lancez le serveur PHP à l'aide ce cette commande :
php -S 127.0.0.1:8000 -t public
Rendez vous sur [localhost:8000] pour voir votre projet tourner
Si vous souhaitez couper le server faites ctrl + c
Conclusion
Après toute cette configuration, c'est la fin de cette première étape !
Vous avez désormais un petit symfony qui tourne, il est certes vide, mais il marche !
Voilà ce que l'on peut retenir de cette étape :
- Vous avez appris a installer composer
- Vous avez appris à utiliser composer pour installer un projet symfony
- Vous en avez appris un peu plus sur cette version de symfony