WP_CLI
Process::run
Run the command.
Method of the class: Process{}
No Hooks.
Returns
ProcessRun.
Usage
$Process = new Process(); $Process->run();
Process::run() Process::run code WP-CLI 2.13.0-alpha
public function run() {
Utils\check_proc_available( 'Process::run' );
$start_time = microtime( true );
$pipes = [];
$proc = Utils\proc_open_compat( $this->command, self::$descriptors, $pipes, $this->cwd, $this->env );
$stdout = stream_get_contents( $pipes[1] );
fclose( $pipes[1] );
$stderr = stream_get_contents( $pipes[2] );
fclose( $pipes[2] );
$return_code = proc_close( $proc );
$run_time = microtime( true ) - $start_time;
if ( self::$log_run_times ) {
if ( ! isset( self::$run_times[ $this->command ] ) ) {
self::$run_times[ $this->command ] = [ 0, 0 ];
}
self::$run_times[ $this->command ][0] += $run_time;
++self::$run_times[ $this->command ][1];
}
return new ProcessRun(
[
'stdout' => $stdout,
'stderr' => $stderr,
'return_code' => $return_code,
'command' => $this->command,
'cwd' => $this->cwd,
'env' => $this->env,
'run_time' => $run_time,
]
);
}