2015-02-24 117 views
6

這適用於comma分隔的文件:str_getcsv在製表符分隔文件

array_map('str_getcsv', file('file.csv')); 

但這並不爲tab工作分隔的文件:

array_map('str_getcsv("\t")', file('file.TLD')); 
+0

嘗試建立一個匿名函數,而不是 – Ghost 2015-02-24 08:12:04

+0

你不能傳遞額外的參數以這種方式在回調中使用的功能:使用閉包,而不是 – 2015-02-24 08:14:45

回答

16

這應該爲你工作:

array_map(function($v){return str_getcsv($v, "\t");}, file('file.csv')); 

示例*.csv file:

a b c d 
1 2 3 4 

輸出:

Array ([0] => Array ([0] => a [1] => b [2] => c [3] => d) [1] => Array ([0] => 1 [1] => 2 [2] => 3 [3] => 4)) 
+0

哇!非常感謝! – 3zzy 2015-02-24 08:18:57

+0

@ 3zzy不客氣!祝你有美好的一天:D – Rizier123 2015-02-24 08:19:16