Php

Dev back

Distribuez vos outils CLI avec Laravel-Zero sur toutes les plateformes

Cet article explique comment créer et distribuer des outils en ligne de commande (CLI) avec Laravel-Zero, un micro-framework basé sur Laravel. Il décrit la création d'applications CLI autonomes, l'utilisation de Composer pour la gestion des dépendances, la génération de fichiers PHAR et l'installation de PHPacker pour produire des binaires multi-plateformes qui n'ont pas besoin de PHP installé sur la machine cible. Cela permet de déployer des outils facilement sur Windows, macOS et Linux.

Dev back

Dependency Hygiene | stitcher.io

Cet article aborde le problème de l'hygiène des dépendances dans les projets PHP, s'interrogeant sur la confiance accordée aux gestionnaires de paquets et la nécessité de comprendre les dépendances utilisées. Une analyse d'un échantillon de projets PHP a révélé que 15% d'entre eux avaient des dépendances inutiles. L'auteur suggère qu'il est crucial de prêter attention à la qualité du code dépendu pour éviter des vulnérabilités potentielles dans l'écosystème.

"
Dev back

PHP 8.6: `array_filter` function's `$mode` throws `ValueError` on invalid values

La version 8.6 de PHP introduit des modifications dans la fonction `array_filter`. Elle inclut un nouveau mode pour spécifier comment les valeurs doivent être passées à la fonction de rappel. Si une valeur non reconnue est fournie, une exception `ValueError` est lancée, améliorant ainsi la gestion des erreurs par rapport aux versions antérieures où de telles valeurs étaient ignorées silencieusement.

"
Dev back

PHP 8.6: New `SortDirection` Enum

La version PHP 8.6 introduit un nouvel Enum appelé `SortDirection`, accessible depuis l'espace de noms global. Cet Enum est un Unit Enum, ce qui signifie que ses éléments n'ont pas de valeur scalaire associée. Les applications PHP peuvent l'utiliser pour valider les directions de tri et en déduire des valeurs spécifiques au domaine. Si une application PHP utilise déjà des Enums, cette nouveauté n'impacte pas la compatibilité antérieure.

"
Dev back

PHP 8.6: New `grapheme_strrev` function

PHP 8.6 introduit la nouvelle fonction `grapheme_strrev`, qui permet d'inverser une chaîne de caractères en unités de graphemes, contrairement à `strrev` qui agit sur les octets. Cette nouvelle fonction est utile pour gérer correctement les caractères multibytes, tels que les emojis, en préservant leur structure. Elle est déclarée dans l'espace de noms global et ne devrait pas affecter la compatibilité ascendante des applications existantes, à moins qu'une fonction du même nom ne soit déjà déclarée. Un polyfill est également possible pour les versions antérieures de PHP.

Dev back

Bonus: Custom DQL Function

Cet article explique comment créer une fonction DQL personnalisée dans Doctrine pour gérer des opérations sur des entités avec héritage dans une base de données. Après avoir rencontré des problèmes avec les alias SQL et le prédicat de discriminant, l'auteur propose de créer une classe personnalisée qui s'intègre avec le système DQL, facilitant ainsi l'utilisation des colonnes discriminantes dans les requêtes. Le processus est décrit étape par étape, incluant l'écriture de la classe, l'enregistrement de la fonction et l'ajustement du code pour qu'il soit conforme aux standards de Doctrine.

Dev back

Challenge #3 for Querying Classes | SymfonyCasts

L'article aborde le concept d'héritage de classes dans la gestion des requêtes avec Doctrine, un ORM pour Symfony. Il est centré sur un défi pédagogique qui incite les utilisateurs à résoudre des problématiques liées à la hiérarchie de classes dans une application Symfony. Le contenu invite également à revisiter une vidéo explicative pour approfondir le sujet.

Dev back

Challenge #2 for Single Table Inheritance | SymfonyCasts

Cet article traite de l'héritage de classe dans Doctrine, en se concentrant sur l'Inheritance par Table Unique dans Symfony. Il propose un challenge pour tester les connaissances sur le sujet. Les lecteurs peuvent débloquer ce challenge avec un accès complet. Il s'agit d'une ressource utile pour les développeurs PHP qui souhaitent maîtriser les fonctionnalités avancées de Doctrine.

Dev back

Symfony UX 3.0.0 Released (Symfony Blog)

La version 3.0.0 de Symfony UX a été publiée, supprimant toutes les fonctionnalités obsolètes de la version 2.x et augmentant les exigences minimales à PHP 8.4 et Symfony 7.4. Quatre paquets obsolètes ont été retirés, et des instructions de migration sont fournies. La mise à jour simplifie également la gestion des composants et rationalise le code dans divers paquets pour respecter les nouvelles normes de Symfony.

Fullstack

SymfonyLive Berlin 2026: "Build Applications that Welcome Change" (Symfony Blog)

SymfonyLive Berlin 2026 se tiendra du 23 au 24 avril, avec un discours d'Alexander M. Turek sur la création d'applications capables d'accueillir des changements technologiques. Le talk portera sur les approches architecturales pour rendre les applications Symfony résilientes face aux évolutions et permettant une refactorisation en douceur, tout en assurant la stabilité de la logique métier. Les billets pour le conférence et les ateliers sont maintenant disponibles.