php 生成 csv文件

发布网友 发布时间:2022-04-20 16:09

我来回答

3个回答

热心网友 时间:2022-04-06 05:15

给你写了一段演示代码.
如果觉得还行,加点分.
<?php
$filename = 'test.csv';
$fp = fopen($filename,'w');
if(!$fp){
echo "不能打开文件 $filename";
exit;
}
$data = array(
array(
'id'=>'1',
'cid'=>'2',
'name'=>'这是第一个开户名称',
'account'=>'3323423432432',
'bank'=>'建设银行' ,
),
array(
'id'=>'2',
'cid'=>'3',
'name'=>'这是第二个开户名称',
'account'=>'3323423432433',
'bank'=>'工商银行' ,
),
);
//我的编码是gbk,如果是utf-8,使用转码语句 mb_convert_encoding('申请ID','gb2312','UTF-8').',';
$csv_content = '';
$csv_content .= '申请ID,';
$csv_content .= '合同编号,';
$csv_content .= '开户名称,';
$csv_content .= '银行账号,';
$csv_content .= '开户行';
$csv_content .= "\n\r";
foreach ($data as $ditem){
//echo $ditem['id'];

$csv_content .= $ditem['id'].',';
$csv_content .= $ditem['cid'].',';
$csv_content .= $ditem['name'].',';
$csv_content .= $ditem['account'].',';
$csv_content .= $ditem['bank'];
$csv_content .= "\n\r";

}

if (fwrite($fp, $csv_content) === FALSE) {
echo "不能写入到文件 $filename";
exit;
}
fclose($fp);
?>

热心网友 时间:2022-04-06 06:33

这个是我写的一段代码,你测试一下,我只写了六个表格,你可以根据需要添加。
function fputcsv4($fh, $arr)是写数组到csv文件的。
你要修改文件路径只要修改$filename变量的值就可以了。

<?php
session_start();
$_SESSION['data'] = $_POST;

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>xx</title>
</head>
<body>
<div>
<form enctype="multipart/form-data" method="POST" action=#>
lbl1: <input type="text" name="lbl1" /><input type="text" name="value1" /><br />
lbl2: <input type="text" name="lbl2" /><input type="text" name="value2" /><br />
lbl3: <input type="text" name="lbl3" /><input type="text" name="value3" /><br />
<input type="submit" />
</form>
</div>
<?php

function fputcsv4($fh, $arr){
$csv = "";
while (list($key, $val) = each($arr))
{
$val = str_replace('"', '""', $val);
$csv .= '"'.$val.'",';
}
$csv = substr($csv, 0, -1);
$csv .= "\n";
if (!@fwrite($fh, $csv))
return FALSE;
}
$data = join(",",$_SESSION['data']);
echo "<p>".$data."</p>";
$filename="./aa.csv";
$handle = fopen($filename,"w+");
fputcsv4($handle,$_SESSION['data']);
fclose($handle);

?>
</body>
</html>

热心网友 时间:2022-04-06 08:08

$filename = "export_".date('Ymd').".csv";
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="'.$filename.'"');
header('Cache-Control: max-age=0');

//写入你的查询代码

$fp = fopen('php://output', 'a');
$print_hea = array("姓名","年龄","性别");
fputcsv($fp, $print_hea);

//下面是你的查询结果代码,把结果循环在数组中后使用
fputcsv($fp, $print_hea_new);

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com