1<?php 2 3/* 4 * This file is part of the Symfony package. 5 * 6 * (c) Fabien Potencier <fabien@symfony.com> 7 * 8 * For the full copyright and license information, please view the LICENSE 9 * file that was distributed with this source code. 10 */ 11 12namespace Symfony\Component\Process\Tests; 13 14use Symfony\Component\Process\Exception\ProcessTimedOutException; 15use Symfony\Component\Process\Process; 16 17require \dirname(__DIR__).'/vendor/autoload.php'; 18 19list('e' => $php) = getopt('e:') + ['e' => 'php']; 20 21try { 22 $process = new Process("exec $php -r \"echo 'ready'; trigger_error('error', E_USER_ERROR);\""); 23 $process->start(); 24 $process->setTimeout(0.5); 25 while (false === strpos($process->getOutput(), 'ready')) { 26 usleep(1000); 27 } 28 $process->signal(\SIGSTOP); 29 $process->wait(); 30 31 return $process->getExitCode(); 32} catch (ProcessTimedOutException $t) { 33 echo $t->getMessage().\PHP_EOL; 34 35 return 1; 36} 37