Assert
Assert est une bibliothèque PHP fournissant une alternative à assert()
de PHP qui autorise d'une façon simple et fiable de vérifier les pré- et post-conditions en code PHP.
Elle a été proposée en tant que RFC MediaWiki, mais elle est complètement générique et peut être utilisée par tout programme PHP ou bibliothèque.
Utilisation
La classe Assert fournit plusieurs méthodes statiques pour vérifier différents types d'assertions. L'utilisation générale est la vérification du type de paramètre, typiquement dans un constructeur ou une méthode set.
use Wikimedia\Assert\Assert;
function setFoo( $foo ) {
Assert::parameterType( 'integer', $foo, 'foo' );
Assert::parameter( $foo > 0, 'foo', 'must be greater than 0' );
}
function __construct( $bar, array $bazz ) {
Assert::parameterType( 'Me\MyApp\SomeClass', $bar );
Assert::parameterElementType( 'int', $bazz );
}
La vérification des paramètres, ou les autres assertions telles que les pré- ou les post-conditions, ne sont pas recommandées pour des raisons de performance dans les parties critiques du code, car les expressions d'évaluation et l'appel des fonctions d'assertion sont coûteux en temps processeur.