PHP从文本文件中获取数据(行和多个间距分开)

时间:2014-03-26 06:35:22

标签: php regex

我必须更新从应用程序导出的文本文件中的数据。它看起来像这样:

customer001         1000          10        10000
customer01         10000         100      1000000
customer1            100        1000       100000
customer0002        1000           1         1000
customer012         1000          10        10000

问题是我无法指定用于分隔数据的空格字符数。

2 个答案:

答案 0 :(得分:0)

假设您有一个名为test.txt的文件,其中包含您的数据:

你可以使用这个简单的awk命令:

awk '{print $1" "$2" "$3" "$4}' test.txt

并放置你想要的空间。我只放了一个空间。 实际上,您可以在此处使用任何字符作为分隔符。

试试这个:

awk '{print $1","$2","$3","$4}' test.txt

这将在值之间添加逗号。看看有什么用。

答案 1 :(得分:0)

guneverdie,我将你的数据用作字符串。但是,您可以使用php文件函数读取应用程序导出文件。

$data = "customer001         1000          10        10000
         customer01         10000         100      1000000
         customer1            100        1000       100000
         customer0002        1000           1         1000
         customer012         1000          10        10000";


$customers_all = explode( "\n", $data);
$customer_individual = array();

foreach ( $customers_all as $customer){

    $customer_with_spaces = explode( " ", $customer);
    array_push($customer_individual, array_filter($customer_with_spaces));        
}

print_r($customer_individual);