Dans le cadre du développement de Phyxo, j'utilise Symfony. Je suis en train de préparer la version 4.0.0 de Phyxo et je viens de mettre à jour Symfony en version 7.2.0. La version est très récente et je viens de tomber sur un bug bizarre qui est apparu avec cette mise à jour. An exception has been […]
Mot-clé - symfony
Créer des plugins pour Phyxo
Pour permettre à quelqu'un utilisant Phyxo d'ajouter de nouvelles fonctionnalités, sans modifier les fichiers de la distribution, il faudrait pouvoir utiliser des plugins. Pour le moment, jusqu'à la version 2.1.0, il n'y a pas la possibilité de créer des plugins comme c'était le cas à l'origine dans […]
Phyxo 2.0.0
Avec les beaux jours qui arrivent, voici une nouvelle version majeure de Phyxo, la version 2.0.0. J'ai continué les évolutions de nettoyage du code avec : le passage complet à Twig et donc la suppression de Smarty l'utilisation du système de traduction de symfony le passage de toutes les URLs […]
Phyxo 1.10.0
Une nouvelle version de Phyxo vient de sortir. Quelques fonctionnalités côté visiteur : un nouveau thème et les anciens thèmes ne sont plus livrés mais sont toujours disponibles en extensions. Sous le capot, j'ai continué le "nettoyage". J'ai commencé à utiliser le système de session de […]
Des vraies sessions
Je continue encore et toujours l'amélioration du code de Phyxo. J'ai fini de regrouper toutes les requêtes SQL dans des classes spécifiques (repositories). J'en ai profité aussi pour : arrêter de maintenir plusieurs thèmes trop anciens et j'utilise désormais un thème par défaut basé sur bootstrap […]
Sortie de Phyxo 1.9.3
J'ai sorti il y a 8 jours Phyxo 1.9.2 en pensant avoir corrigé le problème de mise à jour que j'avais rencontré. En fait il n'en était rien. J'ai fait de nombreux essais de mise à jour et cette fois j'ai le plaisir d'annoncer la sortie de Phyxo 1.9.3. J'en ai profité pour mettre à jour symfony vers […]
Sortie de la version 1.9.2 de phyxo
Après quelques ratés, je viens de sortir une nouvelle version de Phyxo, la version 1.9.2. Au menu : un peu de symfony sous le capot, avec la barre de debug notamment, énormement de code modifié pour essayer de moderniser l'ensemble du code de l'application, des mises à jour du thème […]
Rendre obsolète une fonction

Lorsqu'on ajoute des fonctionnalités à une application, on peut être amené à vouloir supprimer une fonction. Une bonne pratique est de d'abord rendre obsolète cette fonction avant de la supprimer. Cela est censé laisser le temps aux développeurs d'adapter le code qui utilise cette fonction. Par […]
Utilisation de la barre de debug de symfony

Pour profiter de la toute nouvelle barre de debug de Symfony dans Phyxo, je vais en profiter pour afficher les requêtes SQL. Il suffit de suivre la documentation du Data Collector Il faut créer une classe qui implémente l'interface DataCollectorInterface ou qui entend la classe DataCollector. Je […]
Gestion des routes dans Phyxo en utilisant le composant Symfony Routing

Pour continuer dans la modernisation du code de Phyxo, passons à la gestion des URLS en utilisant le composant Routing de Symfony. Il faut bien évidemment avoir installer Symfony avant.
Intrégration de Symfony dans Phyxo

Une première étape dans la modernisation du code de Phyxo est l'intégration de Symfony ainsi que quelques composants.
Comment moderniser une vieille application PHP ?
J'ai contribué pendant de nombreuses années à PhpWebGallery Piwigo. J'y ai pris beaucoup de plaisir et j'ai rencontré des gens formidables. J'ai même contribué à faire entrer l'application dans debian en tant que package. Pour diverses raisons, j'ai fini par ne plus contribuer à Piwigo. Mais j'avais toujours besoin d'une galerie photos et plutôt que de repartir de zéro, j'avais décidé de faire un fork de Piwigo. Ainsi est né Phyxo qui depuis continue d'évoluer petit à petit.
Appeler une tâche symfony depuis une autre tâche
Pour faciliter l'administration de votre site que vous avez bien entendu réalisé avec symfony vous faîtes des tâches. Un exemple de tâche est par exemple la suppression régulière des personnes qui se sont inscrites sur un site mais n'ont jamais confirmé leur email en cliquant sur un lien de validation. Pour rester dans l'esprit DRY, on ne duplique aucune partie de code et on peut être améné à vouloir appeler une tâche depuis une autre...
symfony : hydrater un objet à la main
En utilisant symfony, on ne fait plus réellement de sql du fait de la couche d'abstraction ORM (Propel ou Doctrine). On ne travaille qu'avec des objets. Cela facilite grandement la vie et contribue pour une grande part à la rapidité de développement. Mais cela ne répond pas toujours à tous les besoins...
Ajouter automatiquement le bon auteur à une classe dans symfony
Créer une nouvelle tâche pake dans symfony
La ligne de commande dans symfony fournit de nombreuses facilités pour créer des tâches usuelles et parfois complexes comme créer un nouveau projet, créer une nouvelle application, vider le cache, ...
Ces différentes tâches ne sont en fait que des fonctions php invoquées via la ligne de commande. Il peut s'avérer intéressant d'en ajouter.
Livrer du html au lieu du xhtml avec symfony
Je n'ai encore fait aucun site en XHTML pour diverses raisons : on doit servir le XHTML avec le type mime application/xhtml+xml. Mais le navigateur au grand E bleu ne gère tout simplement pas ce type mime. Et livrer le XHTML avec le type mime text/html revient à faire du mauvais HTML. Voilà pour la petite intro.
Lorsqu'on utilise un CMS, ou un framework, on se demande si celui-là va respecter notre façon de coder. J'ai adopté symfony et j'ai découvert avec joie que je peux continuer à faire du HTML!