for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Solidifier;
use PhpParser\Node;
abstract class Defect extends Event
{
const
EVENT_NAME = 'defect';
protected
$node,
Only declaring a single property per statement allows you to later on add doc comments more easily.
It is also recommended by PSR2, so it is a common style that many people expect.
$node
The PSR-2 coding standard requires that all properties in a class have their visibility explicitly declared. If you declare a property using
class A { var $property; }
the property is implicitly global.
To learn more about the PSR-2, please see the PHP-FIG site on the PSR-2.
$context;
public function __construct(Node $node)
$this->node = $node;
This check looks for multiple assignments in successive lines of code. It will report an issue if the operators are not in a straight line.
To visualize
$a = "a"; $ab = "ab"; $abc = "abc";
will produce issues in the first and second line, while this second example
will produce no issues.
$this->context = null;
}
public function getLine()
return $this->node->getLine();
public function getNode()
return $this->node;
public function getContext()
if($this->context instanceof Node)
return $this->context;
public function setContext(Node $contextNode)
$this->context = $contextNode;
return $this;
abstract public function getMessage();
Only declaring a single property per statement allows you to later on add doc comments more easily.
It is also recommended by PSR2, so it is a common style that many people expect.