1<?php 2/* 3 * This file is part of the PHP_CodeCoverage package. 4 * 5 * (c) Sebastian Bergmann <sebastian@phpunit.de> 6 * 7 * For the full copyright and license information, please view the LICENSE 8 * file that was distributed with this source code. 9 */ 10 11/** 12 * Uses var_export() to write a PHP_CodeCoverage object to a file. 13 * 14 * @since Class available since Release 1.1.0 15 */ 16class PHP_CodeCoverage_Report_PHP 17{ 18 /** 19 * @param PHP_CodeCoverage $coverage 20 * @param string $target 21 * @return string 22 */ 23 public function process(PHP_CodeCoverage $coverage, $target = null) 24 { 25 $filter = $coverage->filter(); 26 27 $output = sprintf( 28 '<?php 29$coverage = new PHP_CodeCoverage; 30$coverage->setData(%s); 31$coverage->setTests(%s); 32 33$filter = $coverage->filter(); 34$filter->setBlacklistedFiles(%s); 35$filter->setWhitelistedFiles(%s); 36 37return $coverage;', 38 var_export($coverage->getData(true), 1), 39 var_export($coverage->getTests(), 1), 40 var_export($filter->getBlacklistedFiles(), 1), 41 var_export($filter->getWhitelistedFiles(), 1) 42 ); 43 44 if ($target !== null) { 45 return file_put_contents($target, $output); 46 } else { 47 return $output; 48 } 49 } 50} 51