This tool check syntax of PHP files faster then serial check with fancier output.
Running parallel jobs in PHP inspired by Nette framework tests.
Just run the following command to install it:
composer require --dev jakub-onderka/php-parallel-lint
For colored output install the suggested package jakub-onderka/php-console-highlighter:
composer require --dev jakub-onderka/php-console-highlighter
-p <php>Specify PHP-CGI executable to run (default: 'php').-s, --shortSet short_open_tag to On (default: Off).-a, -aspSet asp_tags to On (default: Off).-e <ext>Check only files with selected extensions separated by comma. (default: php,php3,php4,php5,phtml)--excludeExclude directory. If you want exclude multiple directories, use multiple exclude parameters.-j <num>Run jobs in parallel (default: 10).--no-colorsDisable colors in console output.--jsonOutput results as JSON string (require PHP 5.4).--blameTry to show git blame for row with error.--git <git>Path to Git executable to show blame message (default: 'git').--stdinLoad files and folder to test from standard input.--ignore-failsIgnore failed tests.-h, --helpPrint this help.-V, --versionDisplay this application version
For run from command line:
./bin/parallel-lint --exclude app --exclude vendor .
or setting for ANT:
<condition property="parallel-lint" value="${basedir}/bin/parallel-lint.bat" else="${basedir}/bin/parallel-lint">
<os family="windows"/>
</condition>
<target name="parallel-lint" description="Run PHP parallel lint">
<exec executable="${parallel-lint}" failonerror="true">
<arg line="--exclude" />
<arg path="${basedir}/app/" />
<arg line="--exclude" />
<arg path="${basedir}/vendor/" />
<arg path="${basedir}" />
</exec>
</target>PHP Parallel Lint supports Box app for creating Phar package. First, install box app:
curl -LSs https://box-project.github.io/box2/installer.php | php
and then run this command in parallel lint folder, which creates parallel-lint.phar file.
box build
