Php 关于exec()函数和时间
我将首先显示一些代码:Php 关于exec()函数和时间,php,time,exec,limit,Php,Time,Exec,Limit,我将首先显示一些代码: echo exec(“compile\\save.exe untitle.c tmpunthilled.c”) 我有一个程序,名为save.exe,我想知道它是否已经停止了? 如果停止,好的。。。做点什么… 如果不是,则可能是错误或循环 现在:我想用同样的方法来控制程序使用的时间,并设置一个限制(超过时间限制,类似这样的事情…) 有人有建议吗 编辑[1]:save.exe是一个用C语言编写的程序,使用两个参数:source和destiny。 popen只是不执行save
echo exec(“compile\\save.exe untitle.c tmpunthilled.c”)代码>
我有一个程序,名为save.exe
,我想知道它是否已经停止了?
如果停止,好的。。。做点什么…
如果不是,则可能是错误或循环
现在:我想用同样的方法来控制程序使用的时间,并设置一个限制(超过时间限制,类似这样的事情…)
有人有建议吗
编辑[1]:save.exe
是一个用C语言编写的程序,使用两个参数:source和destiny。
popen
只是不执行save.exe
,我这样说是因为它不再代表命运(随着exec
的发生) exec()
将在exec程序运行时挂起脚本。控件仅在外部程序终止时返回。如果您想查看程序是否挂起或等待输入或类似情况,可以使用,它返回一个文件句柄,您可以从中读取程序的输出。此时,您可以执行轮询循环以查看是否有任何输出:
$app = popen("your shell command here");
while($output = fgets($app)) {
// handle output
sleep(5); // sleep 5 seconds
}
如果您想将某些内容作为输入发送到应用程序,则必须使用,这样可以在脚本和外部程序之间进行双向通信。Exec不会这样做。使用popen
,这是异步的。另请参阅stream\u select以强制执行时间限制。