php对csv文件的读取,写入,输出下载操作详解

时间:2021-05-26

复制代码 代码如下:
<?php
$file = fopen('text.csv','r');

while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容
//print_r($data); //此为一个数组,要获得每一个数据,访问数组下标即可
$goods_list[] = $data;
}
//print_r($goods_list);
echo $goods_list[0][1];
fclose($file);
?>

在实际工作中,很多时候需要把网站上的一些数据下载到CSV文件里,方便以后查看。
亦或者是用CSV进行一些批量的上传工作。
这个时候我们就需要对CSV进行读写操作。

CSV的读取操作
复制代码 代码如下:
<?php
$file = fopen('D:/file/file.csv','r');
while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容
print_r($data); //此为一个数组,要获得每一个数据,访问数组下标即可
}
fclose($file);
?>

<?php $file = fopen('D:/file/file.csv','r'); while ($data = fgetcsv($file)) { //每次读取CSV里面的一行内容 print_r($data); //此为一个数组,要获得每一个数据,访问数组下标即可 } fclose($file); ?>

CSV的写入操作
复制代码 代码如下:
<?php
$fp = fopen('d:/file/file.csv', 'w');
fputcsv($fp,array('aaa','bbb','cccc'));
fputcsv($fp,array('mmm','yyy','haha')); //fputcsv可以用数组循环的方式进行实现
fclose($fp);
?>

<?php $fp = fopen('d:/file/file.csv', 'w'); fputcsv($fp,array('aaa','bbb','cccc')); fputcsv($fp,array('mmm','yyy','haha')); //fputcsv可以用数组循环的方式进行实现 fclose($fp); ?>

输出CSV(下载功能)
复制代码 代码如下:
<?php
header("Content-Type: text/csv");
header("Content-Disposition: attachment; filename=test.csv");
header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
header('Expires:0');
header('Pragma:public');
echo "id,areaCode,areaName/n";
echo "1,cn,china/n";
echo "2,us,America/n";
?>

输出excel(下载功能)

header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=php100.xls");
echo"id,areaCode,areaName/n";
echo"1,cn,china/n";
echo"2,us,America/n";

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章