PHP Code Sniffer
PHP Parser
Our great sponsors
PHP Code Sniffer | PHP Parser | |
---|---|---|
47 | 11 | |
10,592 | 16,803 | |
0.3% | - | |
7.5 | 8.5 | |
about 2 months ago | 12 days ago | |
PHP | PHP | |
BSD 3-clause "New" or "Revised" License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
PHP Code Sniffer
-
Laravel code-quality tools
PHP Insights supports sniffs from PHP CodeSniffer and fixers from PHP CS Fixer. This allows you to add any sniff or fixer as long as it implements PHP_CodeSniffer\Sniffs\Sniff or PhpCsFixer\Fixer\FixerInterface.
-
Top 6 PHP code quality tools 2023
PHP_CodeSniffer is a widely-used tool for enforcing coding standards in PHP. It checks the code against a set of predefined coding standards (such as PSR-12, PSR-2, and many others) and provides reports with violations and recommendations for improvement. Documentation: You can find more information about PHP_CodeSniffer and its usage in the official documentation: PHP_CodeSniffer Repository
-
PHP in 2023 - stitcher.io
While you're at it, also include code-style checkers like phpcs, phpmd and/or php-cs-fixer
-
how can I know if I am following PSR standards
See https://github.com/squizlabs/PHP_CodeSniffer
-
change versions
If you are well-versed in programming then you might wanna take a look at PHPCompatibility. It will scan your codebase at different PHP version rulesets to point out code that needs upgrading. You will be needing PHPCS for this.
-
Your experience switching from vanilla PHP spaghetti/OOP to Symfony?
PHP code sniffer
-
Extensionless scripts in PHP_CodeSniffer
That Stack Overflow question has a link to a GitHub issue that basically says it isn't supported out of the box and you need to write your own file filter class.
-
Tool to assist with PHP migration (Rector?)
I would use either PHPStan or PHP CodeSniffer + PHPCompatibility
-
Ignore specific error in PHP_CodeSniffer
But sometimes you just have to ignore errors, and you can do that in many different ways. Most (if not all) are explained in the advanced usages and the annotated ruleset parts of the docs.
PHP Parser
-
PHP Skeleton for Bison
nikic/PHP-Parser uses a Bison equivalent for PHP parsing. See the grammar file https://github.com/nikic/PHP-Parser/blob/4.x/grammar/php7.y.
-
Alternative for nette/tokenizer?
Maybe nikic/PHP-Parser is an alternative. If you only need to tokenizer part, PHP has an extension too.
-
How PHP engine builds AST
nikic/PHP-Parser
-
Parsing with PHP, Bison and re2c
Code parsing. Many linters and code builders use php-parser. It uses YACC (analog Bison) to build AST.
-
[Question] Trying to understand, how does the PHP Parser work when it sees HTML?
I see there is the https://github.com/nikic/PHP-Parser
-
I was annoyed by some of PHP's syntax, so I decided to make a PHP transpiler (still in beta!)
It's good idea. But something strange. Php was made as language which embedded to HTML. And how will it work without open and close tags? Instead of parsing and replacing source code as string you might use parser e.g https://github.com/nikic/PHP-Parser
-
Tree-sitter: an incremental parsing system for programming tools
I wish there was a more universal format for parsers, but I just don't think there enough people who know their stuff.
Take PHP, a language that a lot of people use: the tree-sitter-php extension doesn't support features added in 2019, let alone features added towards the end of 2020.
If you want an up-to-date PHP parser, there's really only one open-source parser[0] that's accurate enough to be used on PHP codebases old and new, and it's written in PHP. Then if you want to parse in a robust fashion you have to adopt a number of hacks to get everything working.
I hadn't encountered LSIF before – can GitHub be configured to use those maps?
-
Vote for enums in PHP 8.1 has started — looking good so far!
Time to add them to php-parser! https://github.com/nikic/PHP-Parser/issues/757 So PHPStan/Psalm and Rector can use them.
What are some alternatives?
PHP CS Fixer - A tool to automatically fix PHP Coding Standards issues
PHPStan - PHP Static Analysis Tool - discover bugs in your code without running it!
PHP Mess Detector - PHPMD is a spin-off project of PHP Depend and aims to be a PHP equivalent of the well known Java tool PMD. PHPMD can be seen as an user friendly frontend application for the raw metrics stream measured by PHP Depend.
phan - Phan is a static analyzer for PHP. Phan prefers to avoid false-positives and attempts to prove incorrectness rather than correctness.
Rector - Instant Upgrades and Automated Refactoring of any PHP 5.3+ code
GrumPHP - A PHP code-quality tool
Psalm - A static analysis tool for finding errors in PHP applications
PHPUnit - The PHP Unit Testing framework.
PHP-Parallel-Lint - This tool check syntax of PHP files faster than serial check with fancier output.
CodeClimate - Code Climate CLI