for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Equip\ValueObject;
use InvalidArgumentException;
use function Assert\that;
class Boolean
{
/**
* @var bool|null
*/
private $value;
public function __construct($value, $default = null)
if ($value === null) {
$value = $default;
}
$options = [
'flags' => \FILTER_NULL_ON_FAILURE,
];
$value = filter_var($value, \FILTER_VALIDATE_BOOLEAN, $options);
$assert = that($value)->boolean();
$assert
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
$myVar = 'Value'; $higher = false; if (rand(1, 6) > 3) { $higher = true; } else { $higher = false; }
Both the $myVar assignment in line 1 and the $higher assignment in line 2 are dead. The first because $myVar is never used and the second because $higher is always overwritten for every possible time line.
$myVar
$higher
$this->value = $value;
public function value()
return $this->value;
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
Both the
$myVarassignment in line 1 and the$higherassignment in line 2 are dead. The first because$myVaris never used and the second because$higheris always overwritten for every possible time line.