43 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| // +----------------------------------------------------------------------
 | |
| // | ThinkPHP [ WE CAN DO IT JUST THINK ]
 | |
| // +----------------------------------------------------------------------
 | |
| // | Copyright (c) 2006~2015 http://thinkphp.cn All rights reserved.
 | |
| // +----------------------------------------------------------------------
 | |
| // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
 | |
| // +----------------------------------------------------------------------
 | |
| // | Author: yunwuxin <448901948@qq.com>
 | |
| // +----------------------------------------------------------------------
 | |
| 
 | |
| namespace think\process\exception;
 | |
| 
 | |
| use think\Process;
 | |
| 
 | |
| class Faild extends \RuntimeException
 | |
| {
 | |
| 
 | |
|     private $process;
 | |
| 
 | |
|     public function __construct(Process $process)
 | |
|     {
 | |
|         if ($process->isSuccessful()) {
 | |
|             throw new \InvalidArgumentException('Expected a failed process, but the given process was successful.');
 | |
|         }
 | |
| 
 | |
|         $error = sprintf('The command "%s" failed.' . "\nExit Code: %s(%s)", $process->getCommandLine(), $process->getExitCode(), $process->getExitCodeText());
 | |
| 
 | |
|         if (!$process->isOutputDisabled()) {
 | |
|             $error .= sprintf("\n\nOutput:\n================\n%s\n\nError Output:\n================\n%s", $process->getOutput(), $process->getErrorOutput());
 | |
|         }
 | |
| 
 | |
|         parent::__construct($error);
 | |
| 
 | |
|         $this->process = $process;
 | |
|     }
 | |
| 
 | |
|     public function getProcess()
 | |
|     {
 | |
|         return $this->process;
 | |
|     }
 | |
| }
 | 
