PHPSA is a development tool aimed at bringing complex analysis for PHP applications and libraries.
P.S This software is currently in early alpha state, any contributions/stars will be awesome.
- Core - Component containing definitions and other core files
- Compiler - Component to compile expression(s) and statement(s) from an abstract syntax tree
- Analyzer - Component doing various checks on your files
- ControlFlow - Component for ControlFlow (WIP)
Installation (more)
The recommended way to install phpsa is via Composer.
Run php composer.phar require ovr/phpsa
or add a new requirement in your composer.json.
{
"require": {
"ovr/phpsa": "*"
}
}
How to use (more)
$ ./bin/phpsa check fixtures/
Syntax error: Syntax error, unexpected T_RETURN on line 11 in fixtures/simple/syntax/Error2.php
$b = $a + 1; 123123
Notice: Constant BBBB does not exist in self scope in fixtures/simple/undefined/Const.php on 29 [undefined-const]
return self::BBBB;
Notice: You are trying to cast 'string' to 'string' in fixtures/simple/code-smell/StandardFunctionCall.php on 16 [stupid.cast]
return (string) json_encode(array(
Notice: Missing docblock for callStaticMethodBySelf() method in fixtures/Compiling/Expression/StaticCall.php on 18 [missing-docblock]
public static function callStaticMethodBySelf()
PHP >= 5.6 (compatible up to version 7.1 && hhvm), but you can check files for PHP >= 5.2 with this.
See our documentation in case you need more information on some topic.
Check our Contributing Guide to see how you can help.
Thanks to our sponsors and supporters:
JetBrains |
---|
This project is open-sourced software licensed under the MIT License.
See the LICENSE file for more information.