granam / boolean
Lightweight boolean container with stand-alone converter
Installs: 13 250
Dependents: 5
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
Type:project
Requires
- php: >=7.3
- granam/scalar: ~5.0
Requires (Dev)
- granam/exceptions-hierarchy: ~5.0
- mockery/mockery: ~1.2
- phpunit/phpunit: ~9.3
- roave/security-advisories: dev-master
README
Hint
First of all, make sure you don't need just a simple built-in bool validation .
Internally behaves same way as (bool)$value, but
- non-scalar values (arrays, resources, objects without __toString etc.) raises exception
- objects with __toString magic method are converted to string by that, then to bool
- null can be rejected by raise of an exception, if desired
<?php use Granam\Boolean\Boolean; $booleanFromInteger = new Boolean(12345); // bool(true) var_dump($booleanFromInteger->getValue()); $booleanFromString = new Boolean('124578'); // bool(true) var_dump($booleanFromString->getValue()); $booleanFromFloatString = new Boolean('987.654'); // bool(true) var_dump($booleanFromFloatString->getValue()); $booleanFromZero = new Boolean(0); // bool(false) var_dump($booleanFromZero->getValue()); $booleanFromNull = new Boolean(null, false /* not strict */); // bool(false) var_dump($booleanFromNull->getValue()); // ... // exception is raised (\Granam\Boolean\Tools\Exceptions\WrongParameterType) new Boolean(null); // implicitly strict - NULL is "unknown" state and therefore forbidden