php中的pcntl_exec和exec有什么区别?

时间:2018-01-29 17:55:23

标签: php exec pcntl

我已经在http://us1.php.net/manual/en/function.pcntl-exec.phphttp://php.net/manual/en/function.exec.php阅读了文档,但我无法确切地知道实际差异是什么。

1 个答案:

答案 0 :(得分:1)

  

pcntl_exec()函数的工作原理与标准(unix-style)完全相同   exec()函数。它与常规的PHP exec()函数不同   调用pcntl_exec()的进程被进程替换   被召唤。这是创建孩子的理想方法

。在一个简单的例子中(没有错误检查):

switch (pcntl_fork()) {
  case 0:
    $cmd = "/path/to/command";
    $args = array("arg1", "arg2");
    pcntl_exec($cmd, $args);
    // the child will only reach this point on exec failure,
    // because execution shifts to the pcntl_exec()ed command
    exit(0);
  default:
    break;
}

// parent continues
echo "I am the parent";

从这里的评论中提到: http://us1.php.net/manual/en/function.pcntl-exec.php