您当前的位置:首页 > php > php操作利用内置函数写入和读取csv文件
php操作利用内置函数写入和读取csv文件
日期:2021-11-02 20:53:13 浏览:361
php输出流
php://output 是一个只写的数据流, 允许你以 print 和 echo 一样的方式 写入到输出缓冲区。
header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename="test.csv"');
$output = fopen('php://output','w') or die("Can't open php://output");
//UTF8 csv文件头前需添加BOM,不然会是乱码
fwrite($output, chr(0xEF).chr(0xBB).chr(0xBF));
// 输出标题行
fputcsv($output, array('站点名', '域名', '行业'));
//数据内容
$rows = array(
array('天猫', 'http://tmall.com', '电子商务')
,array('爱E族', 'http://aiezu.com', '互联网技术')
,array('腾讯', 'http://qq.com', '社交网络')
);
foreach($rows as $row) {
fputcsv($output, $row);
}
fclose($output) or die("Can't close php://output");
将文件保存到服务器
$output = fopen('demo.csv','w') or die("Can't open php://output");
//UTF8 csv文件头前需添加BOM,不然会是乱码
fwrite($output, chr(0xEF).chr(0xBB).chr(0xBF));
// 输出标题行
fputcsv($output, array('站点名', '域名', '行业'));
//数据内容
$rows = array(
array('天猫', 'http://tmall.com', '电子商务')
,array('爱E族', 'http://aiezu.com', '互联网技术')
,array('腾讯', 'http://qq.com', '社交网络')
);
foreach($rows as $row) {
fputcsv($output, $row);
}
fclose($output) or die("Can't close php://output");
读取csv文件
fgetcsv文件每次读取一行,反复调用,即可遍历读取整个tab表
$handle = fopen('demo.csv', 'r') or die("Can't open php://output");
$data=fgetcsv($handle);
$data =iconv('gbk','utf-8',var_export($data,true));
var_dump($data);
$data=fgetcsv($handle);
$data =iconv('gbk','utf-8',var_export($data,true));
var_dump($data);
$row=0;
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo "<p> $num fields in line $row: <br /></p>\n";
$row++;
for ($c = 0; $c < $num; $c++) {
echo iconv('gbk','utf-8',$data[$c] ). "<br />";
}
}
上一篇: js在线播放视频blob方式
下一篇: js实现摄像头拍照录像预览