问题
我是一个新手,所以这可能很容易,但我被卡住了
我有一个CSV文件,其行如下所示:
kamis; 4; 0,45; 0,69;
用户可以上传文件并在其上应用一些数学。然后他可以下载应用了数学的文件。
我已将CSV转换为数组
[0]=> array(5) { ["nazwa"]=> string(5) "kamis" ["iloć"]=> string(1) "4" ["koszt"]=> string(4) "0,45" ["cena"]=> string(4) "0,69" [""]=> string(0) "" }
现在我想转换所有"列"进入数组并对它们应用数学,然后我想将它们放入一个新的CSV文件中
的问题
如何将CSV列放入单独的数组中并在计算之后将它们放入新的CSV文件中?
答案 0 :(得分:0)
这里是我使用的函数,你只需要传递一个文件名和一个关联的数据数组(就像你的例子一样),它将使用列标题的第一行中的任何键值,然后输出值所有行。如果没有别的,你应该可以从中学到:
public function outputCsv($fileName, $assocDataArray)
{
ob_clean();
header( 'Content-Type: text/csv' );
header( 'Content-Disposition: attachment;filename='.$fileName);
if(isset($assocDataArray['0'])){
$fp = fopen('php://output', 'w');
fputcsv($fp, array_keys($assocDataArray['0']));
foreach($assocDataArray AS $values){
fputcsv($fp, $values);
}
fclose($fp);
}
ob_flush();
}