Cette section est close pour le moment.
Mais je n'arrête pas la veille, loin de là. Retrouvez mes projets sur Github et sur cette page qui sera à jour plus régulierement


Ressources

Définition de ressource : (nom féminin) Qui peut fournir ce dont on a besoin.
Vous l'aurez compris, sur cette page ce ne sont pas vraiment des tutoriels, c'est plutôt des penses-bêtes plus ou moins fournis mais qui vous permettront d'avoir des bases concernant la programmation.
Recherche par tag

Comment utiliser Composer pour Symfony

Comment utiliser Composer pour Symfony
Publication : Le 12/06/2013 à 14:29:49

Introduction

Il faut savoir que Composer est un outil distinct de Symfony. Mais son utilisation simple et rapide s'avère indispensable, travailler sur des projets Symbony sans lui est une perte de temps.

Composer

Tout d'abord il nous faut récupérer composer.phar depuis le site getcomposer.org.

Une fois placé dans le dossier voulu, vous pouvez exécuter ce fichier en ligne de commande :
// Dans votre dossier : 
// pour éxecuter le fichier
php composer.phar --version

//mettre à jour composer
php composer.phar self-update
Pour installer les futurs librairies que vous allez télécharger, il faut que vous utilisiez Git.

Si vous travaillez sur Linux, il faut taper dans votre console :
sudo apt-get install git-core
Si vous êtes sur Windows (c'est mal !) (je suis dessus) il faudra utiliser un émulateur de commande Unix sous Windows, msysgit.
Une fois installé ce fichier, il faut indiqué dans le PATH de Windows le lien vers msysgit.
;C:\msysgit\bin;C:\msysgit\mingw\bin
Commençons par mettre à jour les dépendances de Symfony, c'est simple il faut depuis le dossier où se situe votre projet, exécuter Composer.

Une fois lancée, cette commande va mettre à jour le framework Symfony.
php lien/vers/dossier/composer.phar update

Ajoutons un bundle à notre projet Symfony

Un bundle c'est quoi?
C'est tout simplement une librairie ou un bibliothèque de code ou encore une dépendance.

Ces bundles peuvent être SwiftMailer, Doctrine ou Twig, elles peuvent être récupérées via le site packagist.org.

Une fois notre bundle trouvé sur Packagist, il faut le déclaré dans le fichier composer.json, souvent sous la forme "dossierBunde/codeBundle" : "version".

Pour la version, "dev-master" équivaut à la dernière version à jour, mais vous pouvez aussi indiquer une version antécédente.

Sur la page Packagist, vous trouverez le code à indiquer dans le json.
// Prenons l'exemple d'un bundle classique de PedroTroller pour manipuler les images
// Dans composer.json
"pedrotroller/phpaint": "dev-master"
Il faut ensuite télécharger ce bundle, pour ceci on va taper une ligne en ligne de commande.
Cette ligne de commande va mettre à jour les dépendances écrites dans le composer.json
php lien/vers/dossier/composer.phar update
Une dernière étape est d'ajouter ce bundle dans le Kernel de Symfony. Direction le fichier app/AppKernel.php
$bundles[] = new Doctrine\Bundle\pedrotroller\phpaint();

En vrac : d'autres lignes de commandes

Si vous développez avec le framework Symfony, vous allez avoir besoin d'autres lignes de commande.

Pour télécharger Symfony :
php chemin-vers/composer.phar create-project symfony/framework-standard-edition nom-du-dossier 2.2
Si vous utilisez Doctrine pour gérer vos données, vous utiliserez :

Pour créer une base de données :
php app/console doctrine:database:create
// Il faut avoir configuré le fichier app/config/parameters.yml pour donner le nom de la base de données
Générer une nouvelle entité
php app/console doctrine:generate:entity
// vous allez ensuite donner le nom de l'entité (ainsi que le bundle auquel il est attaché), ses champs et ses infos.
Si vous souhaitez mettre à jour une entité (créer les setters & getters manquants par exemple) tapez ceci :
php app/console doctrine:generate:entities
Si vous voulez mettre à jour la base de données :
// Voir les requetes qui seront utilisées
php app/console doctrine:schema:update --dump-sql

// Executer les requetes 
php app/console doctrine:schema:update --force
Générer un bundle vide
php app/console generate:bundle

Conclusion

Difficile à prendre en main au départ, cet outil et le développement en ligne de code devient vite indispensable.
Les codes & exemples utilisés sont largement inspirés du cours :
Développez votre site web avec le framework PHP Symfony2
Du Site du Zéro (Alexandre Bacco), merci pour leur travail.

Sur le même thème

Comment utiliser Composer pour Symfony
Publication : Le 12/06/2013 à 14:29:49

Suggestion :

Comment contrôler son code plus facilement avec PHPUnit

Comment contrôler son code plus facilement avec PHPUnit