Nouveau Composant Workflow avec Symfony 3.2

symfony_logo

La gestion de l’évolution des statuts ou des états  dans un projet est souvent source de manipulation très complexe.

Aujourd’hui avec le composant Workflow  qui a été ajouté à Symfony 3.2, le développement  d’un tel système est plus souple, plus rapide et plus besoin d’ajouter un bundle tiers.

Nous vous présenterons une vue d’ensemble  de ce nouveau composant afin que vous puissiez avoir une idée de son  fonctionnement  avant la sortie officielle de Symfony 3.2 qui est actuellement en version Beta.

DoctrineMigrationsBundle avec Symfony 3.1

symfony bundle

Appréhender l’évolution du schéma de la base de données est très important durant le cycle de vie d’un projet, car la base de données étant le cœur de notre produit nous devons avoir toutes les informations sur ses changements et pouvoir faire un rollback au moindre problème. DoctrineMigrationsBundle est un bundle doctrine qui nous permet donc de suivre cette évolution, de migrer la structure et les données de notre base de données, de manière sécurisée et standardisée.

PSR-7 et Symfony

logo_php

Début Mai 2015, la communauté PHP acceptait la norme PSR-7 appelée « HTTP message interfaces », nous donnant ainsi une façon commune de concevoir les messages HTTP.

Il s’agit d’une importante avancée vers une meilleure standardisation et interopérabilité en PHP, ceci plus particulièrement pour les middlewares (des bibliothèques qui s’intègrent entre une requête et une réponse HTTP). Dans le futur, un middleware qui sera écrit autour de ces nouvelles interfaces pourra être utilisé dans n’importe quel framework.

Créer une commande pour n98-magerun

magento_logo

L’outil n98-magerun est la console manquante à Magento 1.x. Elle rend accessible en ligne de commande bon nombre de fonctionnalités comme le lancement des scripts de mise à jour, le changement de mot de passe admin, le flush du cache, l’affichage des astuces pour le débuggage des blocks/templates… Nous allons voir qu’il est également possible de créer très simplement ses propres commandes en disposant de toute la souplesse de la console Symfony 2.

Configurer elasticsearch sur un projet symfony 2

elasticsearchlogo

Elasticsearch est un moteur de recherche libre. Elasticsearch fournit toutes les fonctionnalités d’un moteur de recherche nouvelle génération : les recherches par mots-clés « à la Google », les recherches par combinaison de critères et de filtres, le tri et la pagination des résultats, la gestion des synonymes, l’extraction de texte à partir de documents binaires, l’analyse et la navigation par facettes.

Dans cet article je vais vous présenter la configuration de base du bundle FOSElasticaBundle dans un projet Symfony 2.

Upload multiple de fichiers – PHP5 – Symfony 2

php_symfony

Enoncé du besoin : Pouvoir, à l’aide d’un bouton « Parcourir », sélectionner plusieurs fichiers à télécharger. Les fichiers apparaissent ensuite dans un cadre comportant la liste des fichiers prêts à être téléchargés. Il doit être possible de rajouter un ou un ensemble de fichiers en re-cliquant sur le bouton « Parcourir ». Chacun de ces fichiers peut être enlevé de cette liste en cliquant sur le bouton « supprimé ». Lorsque la liste convient, on clique sur le bouton « Télécharger » pour télécharger les fichiers (ci-dessous une capture d’écran du résultat).