将数组逐行添加到csv文件

我正在使用PHP 7.1.33并且我想将一个数组逐行添加到一个文件中。


我尝试了以下方法:


<?php


$posts = ["a", "b", "c", "d"];


function array2csv($data, $delimiter = ';', $enclosure = '"', $escape_char = "\\")

{

    $f = fopen('data/array2file.csv', 'r+');

    foreach ($data as $item) {

        fputcsv($f, $item, $delimiter, $enclosure, $escape_char);

    }

    rewind($f);

    return stream_get_contents($f);

}


array2csv($posts);



但是,我收到以下错误:


fputcsv() 期望参数 1 是资源,给定的布尔值


我只想拥有一个如下所示的 csv 文件:


| a |

| b |

| c |

| d |

因此,对于每一行,数组的输出。


有什么建议我做错了吗?


感谢您的回复!


汪汪一只猫
浏览 136回答 1
1回答

收到一只叮咚

<?php$posts = ["a", "b", "c", "d"];function array2csv($data, $delimiter = ';', $enclosure = '"', $escape_char = "\\"){&nbsp; &nbsp; $f = fopen('data/array2file.csv', 'w');&nbsp; &nbsp; foreach ($data as $item) {&nbsp; &nbsp; &nbsp; &nbsp; fputcsv($f, [$item], $delimiter, $enclosure, $escape_char);&nbsp; &nbsp; }&nbsp; &nbsp; fclose($f);}array2csv($posts);
打开App,查看更多内容
随时随地看视频慕课网APP