granam/boolean

Lightweight boolean container with stand-alone converter

Installs: 10 655

Dependents: 5

Suggesters: 0

Security: 0

Stars: 1

Watchers: 2

Forks: 0

Open Issues: 0

Type:project

3.3.1 2021-03-23 15:24 UTC

This package is auto-updated.

Last update: 2024-03-24 16:08:50 UTC


README

Build Status Test Coverage

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