[請益] 像這樣的文件,有辦法轉成像陣列去操作嗎

看板PHP作者時間13年前 (2012/06/27 15:14), 編輯推噓3(3016)
留言19則, 9人參與, 最新討論串1/1
像下面這種 表格 的文字 PID TTY TIME CMD 6421 ? 00:03:25 php 6434 ? 00:03:00 php 要怎麼分析、轉成像陣列 那樣 比較好操作 有沒有建議的方法阿 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.126.209.219

06/27 15:25, , 1F
第一行砍掉後,之後的用regexp或explode拆
06/27 15:25, 1F

06/27 15:51, , 2F
像裡面有多個空格,要用什麼去分割呢
06/27 15:51, 2F

06/27 15:54, , 3F
\s*
06/27 15:54, 3F

06/27 16:13, , 4F
substr()
06/27 16:13, 4F

06/27 16:16, , 5F
preg_spilt
06/27 16:16, 5F

06/27 16:19, , 6F
不過最好確認每個資料不會有其他空格出現,否則會切錯
06/27 16:19, 6F

06/27 18:06, , 7F
unpack()
06/27 18:06, 7F

06/27 21:40, , 8F
看起來就是csv阿- - fgetcsv不就好了= =""
06/27 21:40, 8F

06/27 21:51, , 9F
CSV咧 半個逗點都沒有誰跟你CSV 這是ps的output
06/27 21:51, 9F

06/27 21:52, , 10F
\s*不會包括[沒空格]? 不是\s+?
06/27 21:52, 10F

06/27 23:02, , 11F
這種每個欄位寬度固定的, 用substr()最方便吧?
06/27 23:02, 11F

06/28 00:00, , 12F
pid不一定是4碼吧 , cmd也不一定是php, 要完全確認格式
06/28 00:00, 12F

06/28 00:00, , 13F
才能用substr切,否則還是會有機會切錯
06/28 00:00, 13F

06/28 00:13, , 14F
MOONRAKER:沒有規定CSV一定要用逗號分隔啊....
06/28 00:13, 14F

06/28 00:14, , 15F
如果是ps的輸出可以試看看用Tab(\t)切...
06/28 00:14, 15F

06/28 17:59, , 16F
不要用逗號分隔那為啥叫CSV (comma-separated values)?
06/28 17:59, 16F

06/28 18:00, , 17F
這比白馬非馬還要幽默
06/28 18:00, 17F

06/28 19:30, , 18F
pid那欄是5格
06/28 19:30, 18F

06/28 23:13, , 19F
\s+才對 恍神了抱歉 = =
06/28 23:13, 19F
文章代碼(AID): #1FwhAyS9 (PHP)
文章代碼(AID): #1FwhAyS9 (PHP)