0
所以我有一個日誌/ txt文件至極包含以下內容:單行文本日誌文件分析
31 dec. 2014 11:56 - UserA: Hi31 dec. 2014 11:56 - UserB: Hi to you31 dec. 2014 11:56 - UserA: Whats your name?31 dec. 2014 11:57 - UserB: Nancy
林試圖讓這個成爲一個更可讀的格式..... 所以我嘗試以下:
<?php
//load the logfile
$txt_file = file_get_contents('test.txt');
$txtfile2 = preg_split("/ (|:) /", $txt_file);
$rows = explode("\n", $txtfile2[0]);
foreach($rows as $row => $data)
{
$row_data = explode(':', $data);
$info[$row]['when'] = $row_data[0];
$info[$row]['name'] = $row_data[1];
$info[$row]['description'] = $row_data[2];
//display data
echo ' WHEN: ' . $info[$row]['when'] . '<br />';
echo ' WHO: ' . $info[$row]['name'] . '<br />';
echo ' MESSAGE: ' . $info[$row]['description'] . '<br /><br />';
}
?>
這工作部分.... 當被執行時的輸出將是:
WHEN:12月31日2014年11月 世衛組織:56 - UserA 消息:您好
時間:31 dec。 2014年11 WHO:56 - 用戶B 消息:您好你
這是接近我想要的,但你可以看到,由於使用分隔符IM「:」它也將削減時間和地點分鐘在誰身上。 如何才能爆炸第二個「:」只?
我希望這有意義嗎?
請告訴我記錄之間的分隔符?樣本數據中沒有顯示新行嗎? – BigScar 2015-02-24 14:06:33
嗯等待我只是意識到,即時通訊在新行上做爆炸....所以是的,每個條目後都有新的行,即使它不顯示爲/ n,看到爆炸確實將其切入正確的部分 – defiancenl 2015-02-24 15:17:13
有沒有辦法在每次運行foreach時用空格或「。」代替第一次出現的「:」。爲我所關心的? – defiancenl 2015-02-24 15:26:42