/** * @throws \RuntimeException * * @return string */ public function probePhpCsFixer() { $execFinder = new ExecutableFinder(); $execFinder->setSuffixes(['.bat', '.cmd', '.sh', '']); $fixer = $execFinder->find('php-cs-fixer', 'php-cs-fixer'); $builder = new ProcessBuilder([$fixer, '--version']); $builder->setWorkingDirectory(getcwd())->setTimeout(3600); $process = $builder->getProcess(); $process->run(); if (!$process->isSuccessful()) { throw new \RuntimeException('Please install php-cs-fixer'); } return $fixer; }