gpt4 book ai didi

php - 从更新的命令行输出中获取百分比 - Regex 和 PHP

转载 作者:行者123 更新时间:2023-12-02 16:06:07 24 4
gpt4 key购买 nike

我对正则表达式有点困惑,我试图从 PHP 命令行程序的一行中获取进度百分比。问题的组合。

我使用 exec 从命令行运行脚本

exec('python scriptos.py', $returnData, $returnCode);

然后我正在考虑循环返回数据(正在实时更改) - 所以我不确定如何解析响应?我打算通过 $returnData 进行 foreach - 找到这个...

[download]   1.0% of 218.08M at  431.42k/s ETA 08:32

然后我真的很难计算出正则表达式来获得这个百分比。我的理论是寻找数字和最终百分比。

所以,双向问题

  1. 当进程运行时,如何在 PHP 中访问它?
  2. 如何通过正则表达式 preg_match 获取数据?

任何帮助都会非常有帮助!

最佳答案

要从输出行中提取进度,请使用 this正则表达式:

(\d+(\.\d+)?(?=%))

并使用popen()读取输出:

$handle = popen("yourCommand", "r");
while (!feof($handle)) {
$data = fgets($handle);
$matches = array();
preg_match('/(?<percent>\d+(\.\d+)?(?=%))/', $data, $matches);
echo $matches["percent"];
}

关于php - 从更新的命令行输出中获取百分比 - Regex 和 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8509760/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com