2
我有script.sh
,它向一些URL发送请求并使用whet
打印执行时间。这里是源代码:PHP exec()和正在运行的shell脚本给出了不同的结果
time wget http://some.url
当我从命令行运行它,我看到时间的结果与3位小数的精度:
real 0m0.584s
user 0m0.000s
sys 0m0.002s
但是,当我使用PHP函数运行此SH exec("script.sh", $output)
- ,我看到时间的结果仅为2位小数的精度:
0.00user 0.00system 0:00.32elapsed 0%CPU (0avgtext+0avgdata 3788maxresident)k
我怎样才能得到相同的结果,正如我在命令行中也看到了吗?
欺骗PHP版本以为它正在从一个交互shell中运行(例如,一个真正的终端窗口)。如果许多应用程序检测到输出将转到非交互式环境,则会将其输出重新格式化为更“后处理”友好。 –