private function runCommandForWindows($file)
    {
        if ($this->logging) {
            $stdoutPipe = ['file', $this->logging, 'w'];
            $stderrPipe = ['file', $this->logging, 'w'];
        } else {
            $stdoutPipe = fopen('NUL', 'c');
            $stderrPipe = fopen('NUL', 'c');
        }

        $desc = [
            ['pipe', 'r'],
            $stdoutPipe,
            $stderrPipe,
        ];

        $cmd = "START /b php {$file}";

        $handle = proc_open(
            $cmd,
            $desc,
            $pipes,
            getcwd()
        );

        if (!is_resource($handle)) {
            throw new Exception('Could not create a background resource. Try using a better operating system.');
        }

        $pid = proc_get_status($handle)['pid'];

        try {
            proc_close($handle);
            $resource = array_filter(explode(' ', shell_exec("wmic process get parentprocessid, processid | find \"$pid\"")));
            array_pop($resource);
            $pid = end($resource);
        } catch (Exception $e) {
        }

        return $pid;
    }
private function runCommandForWindows($file)
    {
        if ($this->logging) {
            $stdoutPipe = ['file', $this->logging, 'w'];
            $stderrPipe = ['file', $this->logging, 'w'];
        } else {
            $stdoutPipe = fopen('NUL', 'c');
            $stderrPipe = fopen('NUL', 'c');
        }

        $desc = [
            ['pipe', 'r'],
            $stdoutPipe,
            $stderrPipe,
        ];

        $cmd = "START /b php {$file}";

        $handle = proc_open(
            $cmd,
            $desc,
            $pipes,
            getcwd()
        );

        if (!is_resource($handle)) {
            throw new Exception('Could not create a background resource. Try using a better operating system.');
        }

        $pid = proc_get_status($handle)['pid'];

        try {
            proc_close($handle);
            $resource = array_filter(explode(' ', shell_exec("wmic process get parentprocessid, processid | find \"$pid\"")));
            array_pop($resource);
            $pid = end($resource);
        } catch (Exception $e) {
        }

        return $pid;
    }
private function runCommandForWindows ( $ file ) { if ( $ this -> logging ) { $ stdoutPipe = [ 'file' , $ this -> logging , 'w' ] ; $ stderrPipe = [ 'file' , $ this -> logging , 'w' ] ; } else { $ stdoutPipe = fopen ( 'NUL' , 'c' ) ; $ stderrPipe = fopen ( 'NUL' , 'c' ) ; } $ desc = [ [ 'pipe' , 'r' ] , $ stdoutPipe , $ stderrPipe , ] ; $ cmd = "START /b php {$file}" ; $ handle = proc_open ( $ cmd , $ desc , $ pipes , getcwd ( ) ) ; if ( ! is_resource ( $ handle ) ) { throw new Exception ( 'Could not create a background resource. Try using a better operating system.' ) ; } $ pid = proc_get_status ( $ handle ) [ 'pid' ] ; try { proc_close ( $ handle ) ; $ resource = array_filter ( explode ( ' ' , shell_exec ( "wmic process get parentprocessid, processid | find \"$pid\"" ) ) ) ; array_pop ( $ resource ) ; $ pid = end ( $ resource ) ; } catch ( Exception $ e ) { } return $ pid ; }
Execute the shell process for the Windows platform.

@param string $file The absolute path to the executing file.

@return void
Execute the shell process for the Windows platform .