PHP Класс think\Process

Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
$exitCodes array

Открытые методы

Метод Описание
__clone ( )
__construct ( string $commandline, string | null $cwd = null, array $env = null, string | null $input = null, integer | float | null $timeout = 60, array $options = [] ) 构造方法
__destruct ( )
addErrorOutput ( string $line ) 添加一行错误输出
addOutput ( string $line ) 添加一行输出
checkTimeout ( ) 是否超时
clearErrorOutput ( ) : Process 清空 errorOutput
clearOutput ( ) : Process 清空输出
disableOutput ( ) : Process 禁用从底层过程获取输出和错误输出。
enableOutput ( ) : Process 开启从底层过程获取输出和错误输出。
getCommandLine ( ) : string 获取被执行的指令
getEnhanceSigchildCompatibility ( ) : boolean 返回是否 sigchild 兼容模式激活
getEnhanceWindowsCompatibility ( ) : boolean 是否兼容windows
getEnv ( ) : array 获取环境变量
getErrorOutput ( ) : string 返回当前的错误输出的过程 (STDERR)。
getExitCode ( ) : null | integer 获取退出码
getExitCodeText ( ) : null | string 获取退出文本
getIdleTimeout ( ) : float | null 获取idle超时时间
getIncrementalErrorOutput ( ) : string 以增量方式返回 errorOutput
getIncrementalOutput ( ) : string 以增量方式返回的输出结果。
getInput ( ) : null | string 获取输入
getOptions ( ) : array 获取proc_open的选项
getOutput ( ) : string 获取当前的输出管道
getPid ( ) : integer | null 获取PID
getStatus ( ) : string 获取当前的状态
getStopSignal ( ) : integer 返回导致子进程停止其执行的数。
getTermSignal ( ) : integer 返回导致子进程终止其执行的数。
getTimeout ( ) : float | null 获取超时时间
getWorkingDirectory ( ) : string | null 获取工作目录
hasBeenSignaled ( ) : boolean 是否未捕获的信号已被终止子进程
hasBeenStopped ( ) : boolean 检查子进程信号是否已停止
isOutputDisabled ( ) : boolean 输出是否禁用
isPty ( ) : boolean 是否是pty模式
isPtySupported ( ) : boolean 是否支持pty
isRunning ( ) : boolean 检查是否正在运行
isStarted ( ) : boolean 检查是否已开始
isSuccessful ( ) : boolean 检查是否成功
isTerminated ( ) : boolean 检查是否已终止
isTty ( ) : boolean 检查是否是tty模式
mustRun ( callable | null $callback = null ) : self 运行指令
restart ( callable | null $callback = null ) : Process 重启进程
run ( callback | null $callback = null ) : integer 运行指令
setCommandLine ( string $commandline ) : self 设置指令
setEnhanceSigchildCompatibility ( boolean $enhance ) : self 激活 sigchild 兼容性模式。
setEnhanceWindowsCompatibility ( boolean $enhance ) : self 设置是否兼容windows
setEnv ( array $env ) : self 设置环境变量
setIdleTimeout ( integer | float | null $timeout ) : self 设置idle超时时间
setInput ( mixed $input ) : self 设置输入
setOptions ( array $options ) : self 设置proc_open的选项
setPty ( boolean $bool ) : self 设置pty模式
setTimeout ( integer | float | null $timeout ) : self 设置超时时间
setTty ( boolean $tty ) : self 设置TTY
setWorkingDirectory ( string $cwd ) : self 设置工作目录
signal ( integer $signal ) : Process 将一个 POSIX 信号发送到进程中
start ( callable | null $callback = null ) 启动进程并写到 STDIN 输入后返回。
stop ( ) 终止进程
wait ( callable | null $callback = null ) : integer 等待要终止的进程

Защищенные методы

Метод Описание
buildCallback ( callable | null $callback ) : callable 建立 wait () 使用的回调。
isSigchildEnabled ( ) : boolean 是否开启 '--enable-sigchild'
updateStatus ( boolean $blocking ) 更新状态

Приватные методы

Метод Описание
captureExitCode ( ) 捕获退出码
close ( ) : integer 关闭资源
doSignal ( integer $signal, boolean $throwException ) : boolean 将一个 POSIX 信号发送到进程中。
getDescriptors ( ) : array 创建所需的 proc_open 的描述符
readPipes ( boolean $blocking, boolean $close ) 读取pipes
requireProcessIsStarted ( string $functionName ) 确保进程已经开启
requireProcessIsTerminated ( string $functionName ) 确保进程已经终止
resetProcessData ( ) 重置数据
validateTimeout ( integer | float | null $timeout ) : float | null 验证是否超时

Описание методов

__clone() публичный Метод

public __clone ( )

__construct() публичный Метод

构造方法
public __construct ( string $commandline, string | null $cwd = null, array $env = null, string | null $input = null, integer | float | null $timeout = 60, array $options = [] )
$commandline string 指令
$cwd string | null 工作目录
$env array 环境变量
$input string | null 输入
$timeout integer | float | null 超时时间
$options array proc_open的选项

__destruct() публичный Метод

public __destruct ( )

addErrorOutput() публичный Метод

添加一行错误输出
public addErrorOutput ( string $line )
$line string

addOutput() публичный Метод

添加一行输出
public addOutput ( string $line )
$line string

buildCallback() защищенный Метод

建立 wait () 使用的回调。
protected buildCallback ( callable | null $callback ) : callable
$callback callable | null
Результат callable

checkTimeout() публичный Метод

是否超时
public checkTimeout ( )

clearErrorOutput() публичный Метод

清空 errorOutput
public clearErrorOutput ( ) : Process
Результат Process

clearOutput() публичный Метод

清空输出
public clearOutput ( ) : Process
Результат Process

disableOutput() публичный Метод

禁用从底层过程获取输出和错误输出。
public disableOutput ( ) : Process
Результат Process

enableOutput() публичный Метод

开启从底层过程获取输出和错误输出。
public enableOutput ( ) : Process
Результат Process

getCommandLine() публичный Метод

获取被执行的指令
public getCommandLine ( ) : string
Результат string

getEnhanceSigchildCompatibility() публичный Метод

返回是否 sigchild 兼容模式激活
public getEnhanceSigchildCompatibility ( ) : boolean
Результат boolean

getEnhanceWindowsCompatibility() публичный Метод

是否兼容windows
public getEnhanceWindowsCompatibility ( ) : boolean
Результат boolean

getEnv() публичный Метод

获取环境变量
public getEnv ( ) : array
Результат array

getErrorOutput() публичный Метод

返回当前的错误输出的过程 (STDERR)。
public getErrorOutput ( ) : string
Результат string

getExitCode() публичный Метод

获取退出码
public getExitCode ( ) : null | integer
Результат null | integer

getExitCodeText() публичный Метод

获取退出文本
public getExitCodeText ( ) : null | string
Результат null | string

getIdleTimeout() публичный Метод

获取idle超时时间
public getIdleTimeout ( ) : float | null
Результат float | null

getIncrementalErrorOutput() публичный Метод

以增量方式返回 errorOutput
public getIncrementalErrorOutput ( ) : string
Результат string

getIncrementalOutput() публичный Метод

以增量方式返回的输出结果。
public getIncrementalOutput ( ) : string
Результат string

getInput() публичный Метод

获取输入
public getInput ( ) : null | string
Результат null | string

getOptions() публичный Метод

获取proc_open的选项
public getOptions ( ) : array
Результат array

getOutput() публичный Метод

获取当前的输出管道
public getOutput ( ) : string
Результат string

getPid() публичный Метод

获取PID
public getPid ( ) : integer | null
Результат integer | null

getStatus() публичный Метод

获取当前的状态
public getStatus ( ) : string
Результат string

getStopSignal() публичный Метод

返回导致子进程停止其执行的数。
public getStopSignal ( ) : integer
Результат integer

getTermSignal() публичный Метод

返回导致子进程终止其执行的数。
public getTermSignal ( ) : integer
Результат integer

getTimeout() публичный Метод

获取超时时间
public getTimeout ( ) : float | null
Результат float | null

getWorkingDirectory() публичный Метод

获取工作目录
public getWorkingDirectory ( ) : string | null
Результат string | null

hasBeenSignaled() публичный Метод

是否未捕获的信号已被终止子进程
public hasBeenSignaled ( ) : boolean
Результат boolean

hasBeenStopped() публичный Метод

检查子进程信号是否已停止
public hasBeenStopped ( ) : boolean
Результат boolean

isOutputDisabled() публичный Метод

输出是否禁用
public isOutputDisabled ( ) : boolean
Результат boolean

isPty() публичный Метод

是否是pty模式
public isPty ( ) : boolean
Результат boolean

isPtySupported() публичный статический Метод

是否支持pty
public static isPtySupported ( ) : boolean
Результат boolean

isRunning() публичный Метод

检查是否正在运行
public isRunning ( ) : boolean
Результат boolean

isSigchildEnabled() защищенный Метод

是否开启 '--enable-sigchild'
protected isSigchildEnabled ( ) : boolean
Результат boolean

isStarted() публичный Метод

检查是否已开始
public isStarted ( ) : boolean
Результат boolean

isSuccessful() публичный Метод

检查是否成功
public isSuccessful ( ) : boolean
Результат boolean

isTerminated() публичный Метод

检查是否已终止
public isTerminated ( ) : boolean
Результат boolean

isTty() публичный Метод

检查是否是tty模式
public isTty ( ) : boolean
Результат boolean

mustRun() публичный Метод

运行指令
public mustRun ( callable | null $callback = null ) : self
$callback callable | null
Результат self

restart() публичный Метод

重启进程
public restart ( callable | null $callback = null ) : Process
$callback callable | null
Результат Process

run() публичный Метод

运行指令
public run ( callback | null $callback = null ) : integer
$callback callback | null
Результат integer

setCommandLine() публичный Метод

设置指令
public setCommandLine ( string $commandline ) : self
$commandline string
Результат self

setEnhanceSigchildCompatibility() публичный Метод

激活 sigchild 兼容性模式。
public setEnhanceSigchildCompatibility ( boolean $enhance ) : self
$enhance boolean
Результат self

setEnhanceWindowsCompatibility() публичный Метод

设置是否兼容windows
public setEnhanceWindowsCompatibility ( boolean $enhance ) : self
$enhance boolean
Результат self

setEnv() публичный Метод

设置环境变量
public setEnv ( array $env ) : self
$env array
Результат self

setIdleTimeout() публичный Метод

设置idle超时时间
public setIdleTimeout ( integer | float | null $timeout ) : self
$timeout integer | float | null
Результат self

setInput() публичный Метод

设置输入
public setInput ( mixed $input ) : self
$input mixed
Результат self

setOptions() публичный Метод

设置proc_open的选项
public setOptions ( array $options ) : self
$options array
Результат self

setPty() публичный Метод

设置pty模式
public setPty ( boolean $bool ) : self
$bool boolean
Результат self

setTimeout() публичный Метод

设置超时时间
public setTimeout ( integer | float | null $timeout ) : self
$timeout integer | float | null
Результат self

setTty() публичный Метод

设置TTY
public setTty ( boolean $tty ) : self
$tty boolean
Результат self

setWorkingDirectory() публичный Метод

设置工作目录
public setWorkingDirectory ( string $cwd ) : self
$cwd string
Результат self

signal() публичный Метод

将一个 POSIX 信号发送到进程中
public signal ( integer $signal ) : Process
$signal integer
Результат Process

start() публичный Метод

启动进程并写到 STDIN 输入后返回。
public start ( callable | null $callback = null )
$callback callable | null

stop() публичный Метод

终止进程
public stop ( )

updateStatus() защищенный Метод

更新状态
protected updateStatus ( boolean $blocking )
$blocking boolean

wait() публичный Метод

等待要终止的进程
public wait ( callable | null $callback = null ) : integer
$callback callable | null
Результат integer

Описание свойств

$exitCodes публичное статическое свойство

public static array $exitCodes
Результат array