2012-02-10 44 views
1

我試圖符合標籤分隔的文件來分析各個值打破,像這樣:PHP解析打破

00601 166659789 799296 64.348 0.309 -66.749961 18.180555 
00602 79288158 4446273 30.613 1.717 -67.17613 18.362268 

我解析它現在使用:

$delimiter = "\t"; 
$splitcontents = explode($delimiter, $contentsOfFile); 
foreach ($splitcontents as $value) 
{ 
    echo $value; 
} 

但是,如果出現新行,則將前一行的最後一個值和新行的第一個值組合起來。所以當for循環到達第一行的末尾時,最後一個值實際上是「18.180555 00602」。

如何根據換行符和製表符解析出值?

回答

4

首先根據換行符進行爆炸,然後用選項卡分解每一行。

$delimiter = "\n"; 
$splitcontents = explode($delimiter, $contentsOfFile); 
foreach ($splitcontents as $line) 
{ 
    $bits = explode("\t", $line); 
    var_dump($bits); 
} 
+1

這是['preg_split'(http://php.net/manual/en/function.preg-split.php)是...我想我會主張過爆炸是因爲如果你正在處理像\ r \ n這樣的混合換行符? – rdlowrey 2012-02-10 19:13:59