English | 简体中文 | 繁體中文
查询

pcntl_wexitstatus()函数—用法及示例

「 获取子进程的退出状态 」


函数名称:pcntl_wexitstatus()

函数描述:pcntl_wexitstatus()函数用于获取子进程的退出状态。

适用版本:该函数在PHP 4.2.0及更高版本中可用。

语法:int pcntl_wexitstatus ( int $status )

参数:

  • status: 必需。一个整数,表示子进程的退出状态。

返回值:返回一个整数,表示子进程的退出状态。

示例:

<?php
$pid = pcntl_fork();

if ($pid == -1) {
    // 创建子进程失败
    die("Could not fork");
} elseif ($pid) {
    // 父进程
    pcntl_wait($status); // 等待子进程退出
    if (pcntl_wifexited($status)) {
        $exitStatus = pcntl_wexitstatus($status); // 获取子进程的退出状态
        echo "Child process exited with status: $exitStatus";
    }
} else {
    // 子进程
    sleep(2);
    exit(5); // 子进程退出并返回状态码5
}
?>

在上面的示例中,我们使用pcntl_fork()函数创建了一个子进程,然后父进程使用pcntl_wait()函数等待子进程退出。在父进程中,我们使用pcntl_wifexited()函数检查子进程是否正常退出,如果是,则使用pcntl_wexitstatus()函数获取子进程的退出状态。最后,我们打印出子进程的退出状态。在子进程中,我们使用exit()函数退出并返回状态码5。

运行上述示例代码,输出结果为:

Child process exited with status: 5

这表明子进程成功退出,并返回了状态码5。

补充纠错
上一个函数: pcntl_wifexited()函数
下一个函数: pcntl_waitpid()函数
热门PHP函数
分享链接