【发布时间】:2017-11-01 23:51:34
【问题描述】:
我有一个在我的 Windows 机器上运行 cmd 命令的 php 脚本,我将我的标准输出从命令 shell 重定向回我的 php 脚本,我得到以下结果:
接口统计接收发送字节数 30750280 8480324
单播数据包 44928 43160
非单播数据包 0 0
丢弃 0 0
错误 0 0
未知协议 0
我想要做的是使用 RegEx 来格式化结果,以便我可以以表格形式输出数据,例如:
interface statistics
received| 3535353535
sent | 4664646646
errors | 0
按这个顺序。
到目前为止,我只是尝试使用下面的代码仅格式化包含“字节”的行,但运气不佳;
if (preg_match('/Bytes/',$lines)) {
$lines = trim($lines);
$pieces = preg_split("/[\s,]+/", $lines);
echo $lines;
echo "Sent: ".(int)$pieces[1]."Reeived: ".$pieces[2];
preg_match_all('/(\d)|(\w)/', $lines, $matches);
$numbers = implode($matches[1]);
$letters = implode($matches[2]);
//var_dump($numbers, $letters);
//echo $numbers;
//echo $letters."letters";
}
【问题讨论】: