Développement

PHP et Cassandra sont sur un même porte-conteneurs…

...Cassandra tombe à l'eau. Que fait PHP ? Introduction L'objectif est de tester la haute disponibilité de Cassandra pour une application PHP. Pour cela, 2 modes de connexion à la base de données sont testés : Un driver PDO nommé YACassandraPDO Le driver PHP officiel de Datastax Pour simplifier les tests, l'application est déployée dans des conteneurs Docker via Docker Compose. Le scénario utilisé est assez simple : Déploiement : d'un cluster Cassandra avec 3 nœuds d'une application PHP FPM…
Lire d'avantage
Développement

Composer avec Docker

Le PHP a souvent l'image d'un langage destiné aux bricoleurs. Cela était peut-être un peu vrai au tout début. Mais avec le temps, il s'équipe d'outils d'industrialisation tel que Composer. C'est un outil de gestion de dépendances écrit en PHP et publié sous licence Open Source. Le dépôt utilisé par défaut pour télécharger les dépendances est celui de Packagist. Pour l'exécuter, il faut avoir PHP en ligne de commande. Néanmoins, un développeur l'a empaqueté dans un conteneur Docker et est…
Lire d'avantage
Développement

PHP 7.0.0

C'est aujourd'hui le 3 décembre 2015 que la version finale de PHP a été rendue publique. Le principal objectif de cette version est d'améliorer les performances. L'équipe de développement annonce que PHP 7 est deux fois plus rapide que PHP 5 et consomme 1/3 de mémoire en moins. Il faut toujours rester prudent avec ce genre de chiffre. Néanmoins, l'annonce mérite de faire quelques tests. Le langage propose également quelques améliorations : Opérateur de comparaison combinée Spaceship operator <=> :…
Lire d'avantage
Développement

phpunit – détecter les tests trop lents avec SpeedTrap

Introduction Les tests unitaires sont exécutés très souvent. Il est important que le temps d'exécution soit très court pour deux raisons : Avoir le retour sur leurs status le plus rapidement possible Ne pas dissuader les développeurs de les lancer (même si la plateforme d'intégration est le garde-fou des tests automatisés) Cependant, avec le temps, ces tests sont souvent de plus en plus lents à s'exécuter. Parfois, ce temps augmente significativement suite à l'ajout de nouveaux tests ou de nouvelles…
Lire d'avantage
Développement

Guzzle – mocking HTTP en PHP

Aujourd'hui, nous allons parler des tests unitaires, mocks, client HTTP et PHP ! :-o Tests unitaires Les tests unitaires automatisés sont un outil essentiel pour garantir la stabilité d'un développement et accélérer les phases de correction, d'évolution ou refactoring. Cependant, pour qu'un test unitaire soit efficace, il doit s'assurer de respecter quelques recommandations (liste non-exhaustive) : être très rapide à exécuter : pour le lancer le plus souvent possible et avoir un feedback presque instantané être rejouable indéfiniment : pour…
Lire d'avantage

HybridAuth – connexion unifiée sur les services sociaux en PHP

Introduction Il est souvent pénible de se rappeler de tous ses identifiants et mots de passe que l'on utilise sur différents sites web. Pour répondre à cette problématique, de nombreux réseaux sociaux proposent des services web permettant d'utiliser leur propre service d'authentification pour des sites externes. Vous connaissez sûrement le Facebook Connect, Google login, Signin with Twitter, Il existe même des plate-formes spécialisées telles qu'OpenID. En tant que concepteur de site, il s'avère important de proposer ce type de service…
Lire d'avantage

Supprimer les accents UTF8 avec PHP

Il est souvent utile de supprimer les accents des caractères accentués dans une chaîne. Cette action est utilisée par exemple pour générer une URL propre ou bien un nom de fichier qui ne posera pas de problème. En PHP, le développeur retrouve souvent la solution  suivante : $str = strtr($str, 'ÁÀÂÄÃÅÇÉÈÊËÍÏÎÌÑÓÒÔÖÕÚÙÛÜÝ', 'AAAAAACEEEEEIIIINOOOOOUUUUY'); $str = strtr($str, 'áàâäãåçéèêëíìîïñóòôöõúùûüýÿ', 'aaaaaaceeeeiiiinooooouuuuyy'); Ce bout de code fonctionne très bien en IS0-8859-1. Cependant, avec une chaîne en UTF8, des caractères étranges vont s'immiscer. Cela vient du fait que les caractères sont encodés sur 8…
Lire d'avantage

eZ Components – la – boite à outils du développeur PHP

La société ez System propose depuis peu une suite de composants PHP très utile distribuée sous la nouvelle licence BSD : eZ components. Ces composants sont très bien fait et permettent d'augmenter la productivité des développeurs. La liste contient plus de vingt composants des plus variés possibles : du moteur de template, à l'outil de manipulation d'image, en passant par le générateur de code PHP ou le moniteur système ! En version actuellement, le carnet de route laisse présager de…
Lire d'avantage

Smarty – postfilter ou output filter ?

Quelle est la différence entre les filtres de post-compilation et les filtres de sortie ? Smarty est un excellent moteur de templates PHP. Ce framework compile les templates écris par les développeurs pour exécuter par la suite la version compilée. Parfois, il est nécessaire très pratique d'automatiser des traitements sur les templates. Par exemple pour modifier les URLs, appliquer des filtres sur les adresses emails, ... C'est pourquoi Smarty propose les systèmes de postfilters et output filters. Mais lesquels utiliser ? Les…
Lire d'avantage

EasyPHP et PHP5

Comment mettre à jour EasyPHP pour obtenir les fonctionnalités de PHP5 ? EasyPHP est une solution logicielle qui installe et configure sous MS Windows : Apache, PHP, MySQL ainsi de quelques outils de configuration et d'administration. La dernière version stable est la qui correspond à : Apache PHP MySQL phpMyAdmin De plus en plus d'hébergeurs proposent PHP5, mais EasyPHP ne propose pas cette version de PHP. Bien sur, il existe d'autres solutions telles que WAMP5 ou Mov'AMP supportent PHP5. Mais cet article…
Lire d'avantage
12