我的行数组包含这样的内容:
5 1 0 49972729 1813694 7 218 0 0 0 0 747 16811 13911 1 1 96 1 0.53 3.3 12:51:44
6 1 0 49976522 1806247 3 203 0 0 0 0 613 41885 13113 3 2 95 1 0.86 5.4 12:52:14
kthr memory page faults cpu time
---------- --------------------- ------------------------------------ ------------------ ----------------------- --------
r b p avm fre fi fo pi po fr sr in sy cs us sy id wa pc ec hr mi se
8 1 0 49979036 1800213 1 190 0 0 0 0 650 54141 14509 2 2 95 1 0.80 5.0 12:52:44
6 1 0 49981360 1807204 2 235 0 0 0 0 641 31630 18005 2 1 96 1 0.70 4.4 12:53:14
我想通过每一行以及以数字开头的每一行推送到一个ne数组。
到目前为止,我有这个:
{for ($i=0; $i<sizeof($line); $i++)
if(preg_match("^[0-9]", $line[i])
array_push($line[$i], $new_line);
}
我收到此错误:
Parse error: syntax error, unexpected T_STRING in C:\PHP\cpu.php on line 20
我是非常新的PHP,非常感谢任何见解。
答案 0 :(得分:1)
$rawLines = explode("\n", $content);
$lines = array();
foreach($rawLines as $rawLine){
$rawLine = trim($rawLine);
$parts = explode(" ", $rawLine); //maybe explode("\t", $rawLine);
$parts[0] = trim($parts[0]);
if( !ctype_digit($parts[0]) ){
continue;
}
$lines[] = $parts;
}
答案 1 :(得分:0)
修复脚本的语法错误(例如,缺少)
)时,您需要使用正则表达式的分隔符:
if(preg_match("/^[0-9]/", $line[$i]))
^ here ^