Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP和PHP excel reader类将CSV数据转换为固定宽度的记录_Php_Excel_Csv_Fixed Length Record - Fatal编程技术网

使用PHP和PHP excel reader类将CSV数据转换为固定宽度的记录

使用PHP和PHP excel reader类将CSV数据转换为固定宽度的记录,php,excel,csv,fixed-length-record,Php,Excel,Csv,Fixed Length Record,我的最终结果是使用PHP从一个csv或excel文件创建一个固定长度的记录。我正在使用excel_reader2.php,似乎很好地导入了它并将其显示在浏览器中。我想依次将内容导出或写入一个文件,以便每列导出为35个字符的固定长度字段。目前,$数据的格式是html,不知道如何写下我所描述的内容。提前感谢有人为我指出正确的方向。您将获取CSV文件的每一行。然后,该行的每一列。对于您可以使用的每个单元格: $newcell = sprintf("[%35s]\n", $cell); 因此,您将有一

我的最终结果是使用PHP从一个csv或excel文件创建一个固定长度的记录。我正在使用excel_reader2.php,似乎很好地导入了它并将其显示在浏览器中。我想依次将内容导出或写入一个文件,以便每列导出为35个字符的固定长度字段。目前,$数据的格式是html,不知道如何写下我所描述的内容。提前感谢有人为我指出正确的方向。

您将获取CSV文件的每一行。然后,该行的每一列。对于您可以使用的每个单元格:

$newcell = sprintf("[%35s]\n", $cell);

因此,您将有一个35个字符宽的字符串,数据为$cell。然后,通过两个循环将其添加到一个文件中。

那么您是说您有一个HTML表作为输入,并且希望以纯文本的形式显示它,每个单元格正好有35个字符宽?是我用来向浏览器显示excel输出的内容。我需要的是将相同的输出重定向到一个固定长度的文件,每个字段的长度为35个字符。包含整个html转储。如果类允许您访问工作表的行和列,则可以循环访问它们并输出@Keenora.Btw所述的格式化数据。我不知道这个excel_reader2.php,但是如果你能得到一个数组,你也可以使用fputcsv函数来编写新的csv。是我用来向浏览器显示excel输出的内容。我需要的是将相同的输出重定向到一个固定长度的文件,每个字段的长度为35个字符。包含整个html转储,正如我所说,您只需要获取每一行和每一列,遍历它,并在每个单元格上执行上面的sprintf。然后将新数据保存到文件中。然后您将得到一个固定长度的列文件。