运行 在 PHP 中使用 shell_exec 的程序,如何知道进程是否完成?

Running a program using shell_exec in PHP, how to know if process is done?

您好,我正在 运行使用 shell_exec 命令在 PHP 中创建一个 python 脚本, 但是我怎么知道 python 的执行是否已经完成?

这是我的部分代码

$py_path = 'app/public/engines/validation/delta';        
chdir($py_path);                    
$py_var = 'python scraped_data.py';                   
$exec = shell_exec($py_var);

我如何知道 python 是否已完成处理? 我想知道,因为我有一系列的过程要 运行 但它需要先完成第一个过程。

谢谢,

如果您检查 php.net shell_exec() 的描述是:

shell_exec — Execute command via shell and return the complete output as a string

因此您可以编辑 python 脚本以在脚本完成后输出 true 或 1。

那么您可以简单地编写如下代码:

$py_path = 'app/public/engines/validation/delta';        
chdir($py_path);                    
$py_var = 'python scraped_data.py';                   
$exec = shell_exec($py_var);
If($exec){
//Execute another script or do what you wish
}