您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> php编程 >> 正文

php不使用插件导出excel的简单方法

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 这篇文章主要介绍了php不使用插件导出excel的简单方法,首先获取需要导出的数据的数组,数组的格式在下面。之后就是定义文件名称和需要导出的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}tn";          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']."tn"); } }       数组格式为    代码如下: 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 ))))