0

这将是我的第一个 PHP 项目之一。

重新排列制表符分隔数据的脚本在 PHP 中从哪里开始。

我有一个制表符分隔的数据文本文件,需要定期重新排列。某些整列必须移动到文本文件的不同部分,并且某些列的标题也需要重命名。基本上,我的制表符分隔数据文件正在转换为匹配另一个制表符分隔数据集以适应系统。(实际上该文件是 Amazon.com SELLER CENTRAL Order Reports 制表符分隔的文本文件,与从 Amazon.com 自己的 MARKETPLACE 订单报告下载的制表符分隔的文本文件格式不同)

我希望有人能给我一些指导,告诉我从哪里开始编写代码或如何使这个脚本工作......

4

3 回答 3

3

您可以使用 PHP 读取 TSV 文件fgetcsv(),将"\t"其用作分隔符。

这为您提供了一个列数组,您可以根据需要对其进行操作。完成后,您可以将数组作为一行写入新文件中,使用fputcsv()

编辑:例如,该过程将类似于

  1. fopen()打开现有数据文件(源)和新目标文件的文件句柄(使用)
  2. 使用逐行读取源文件fgetcsv()
  3. fgetcsv()使用按所需顺序返回的值创建一个新的列数组
  4. 使用将新数组写入新文件fputcsv()
  5. 完成后,关闭两个文件句柄
于 2011-03-24T01:38:30.463 回答
0

fgetcsv()使用和使用解析数据array_multisort()。如果您需要一个示例,可以在 multisort 手册页上找到一个示例。

于 2011-03-24T01:37:12.593 回答
0

你一定要知道这里

  1. 要匹配 php 中的 TAB,请使用字符串:"\t"
  2. 接下来,您将需要explode函数从文件的一行中获取数组
  3. 接下来,您需要在数组元素之间循环使用foreach来分析数据
  4. 当然,PHP 中的数组总是会帮助你
  5. 最后,当您需要生成最终的制表符分隔文件时,您将需要内

当然看看PHP 中的字符串数组函数。

于 2011-03-24T01:39:29.600 回答