Monthly Archives: février 2011

Access to undeclared static property, PHP + APC

Un bref article qui pourra faire gagner quelques heures de recherches à ceux et celles qui rencontreraient un jour le problème.

Exposé de la situation : Vous avez une application en parfait état de fonctionnement, jusqu’au jour ou vous installez APC (magnifique extension, indispensable il va sans dire).

Résultat : D’un coup, un message d’erreur « Access to undeclared static property xxx in xxx »

Pourtant, tout dans votre code semble correct (et fonctionne sans APC).

Lire la suite »

Le Design Pattern patron de méthode (Template Method) en PHP

Dans cet article nous allons aborder une autre prose de la programmation objet : le modèle de conception « Patron de méthode » (Template method).

Ce pattern (fréquemment utilisé dans les classes abstraites) propose de développer un algorithme basé sur des primitives que l’on trouvera uniquement dans les classes filles.

Dans notre exemple nous allons développer un système de validation de données basique qui met en avant ce modèle.

Lire la suite »

PHPUnit – Tester les Erreurs, Warnings et Notices

Voici un billet très court afin de présenter la façon dont je teste les méthodes qui génèrent des erreurs, warnings et notices dans mes tests unitaires avec PHPUnit.

La méthode classique est d’utiliser les options convertErrorsToExceptions, convertNoticesToExceptions et convertWarningsToExceptions qui convertissent les messages respectifs en exception que l’on peut intercepter, puis d’utiliser les annotations @expectedException ou les méthodes setExpectedException (‘ExceptionName’);

Cette méthode présente malheureusement l’inconvénient de stopper l’exécution du script et empêche donc le test du code placé après la dite exception (et j’aime pouvoir disposer pour certaines bibliothèques d’une couverture de code au plus proche des 100%).

Lire la suite »