PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码,学习php的朋友可以参考下。
代码如下:
$command = '/usr/bin/php /pub/www/u111/job/Crondo/auto_collector.php &';
$process = proc_open($command, array(),$pipes);
$var = proc_get_status($process);
proc_close($process);
//pid就是进程ID,至于为什么要加1,我现在也没有搞懂,经过多次的测试,发现$var['pid']得到的ID比实际的少1
$pid = intval($var['pid'])+1;
//杀死进程
proc_close(proc_open('kill -9 '.$pid, array(), $pipes));