首先获取需要导出的数据的数组,数组的格式在下面。之后就是定义文件名称和需要导出的excel的样式,最后就是循环数组,输出数据了。不使用插件,简单易修改。
$filename=date("Y年m月d日")."数据信息统计结果.xls"; //文件名
$ua = $_SERVER["HTTP_USER_AGENT"]; //中文文件名不乱码
if (preg_match("/MSIE/", $ua)) {
$filename=urlencode($filename);
} else if (preg_match("/Firefox/", $ua)) {
$filename=$filename;
} else {
$filename=urlencode($filename);
}
header("Content-type:application/vnd.ms-excel"); //输出excel头
header("Content-Disposition:filename=".$filename);
$n = iconv('utf-8', 'gbk', '11'); //设置excel表格列
$t = iconv('utf-8', 'gbk', '22');
$k = iconv('utf-8', 'gbk', '33');
$s = iconv('utf-8', 'gbk', '44');
$r= iconv('utf-8', 'gbk', '55');
$a= iconv('utf-8', 'gbk', '66');
echo "{$n}\t";
echo "{$t}\t";
echo "{$k}\t";
echo "{$s}\t";
echo "{$r}\t";
echo "{$a}\t\n";
foreach($a as $kk=>$pp){ //对每列些数据
foreach($pp['child'] as $k=>$p){
echo iconv("utf-8", "gbk//IGNORE", $pp['u']."\t");
echo iconv("utf-8", "gbk//IGNORE", $p['u']."\t");
echo iconv("utf-8", "gbk//IGNORE", $p['s']."\t");
echo iconv("utf-8", "gbk//IGNORE", $p['t']."\t");
echo iconv("utf-8", "gbk//IGNORE", $p['c']."\t");
echo iconv("utf-8", "gbk//IGNORE", $p['t']."\t\n");
}
}
数组格式为
Array ( [0] => Array ( [unitid] => 1234 [u] => aaa [fid] => 1000 [shengid] => 1000 [shiid] => 0 [xianid] => 0 [rid] => 2 [orders] => 50 [sys_createuid] => 1 [sys_createtime] => 1383556976 [sys_updateuid] => 1 [sys_updatetime] => 1389853763 [child] => Array ( [0] => Array ( [unitid] => 1035 [u] => bbb [fid] => 1000 [shengid] => 1000 [shiid] => 0 [xianid] => 0 [rid] => 2 [orders] => 50 [sys_createuid] => 1 [sys_createtime] => 1383556976 [sys_updateuid] => 1 [sys_updatetime] => 1389853763 [funitname] => [s] => 6 [t] => 1 [c] => 1 [t] => 2 ) [4] => Array ( [u] => 合计 [s] => 8 [t] => 1 [c] => 3 [t] => 3 ) ) ) )