• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

基于php导出到Excel或CSV的方法

php 搞代码 4年前 (2022-01-22) 21次浏览 已收录 0个评论

本篇文章是对php导出到Excel或CSV(附utf8、gbk 编码转换)进行了详细的分析介绍,需要的朋友参考下

php导入到excel乱码是因为utf8编码在xp系统不支持所有utf8编码转码一下就完美解决了
utf-8编码案例
Php代码

<?php header("Content-Type: application/vnd.ms-excel; charset=UTF-8"); header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("Content-Type: application/download"); header("Content-Disposition: attachment;filename=11.xls "); header("Content-Transfer-Encoding: binary "); ?>

Php代码

<?    $filename="php导入到excel-utf-8编码";    $filename=iconv("utf-8", "gb2312", $filename);    echo $filename;    ?>

gbk编码案例
Php代码

<?php header("Content-Type: application/vnd.ms-excel; charset=UTF-8"); header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("Content-Type: application/download"); header("Content-Disposition: attachment;filename=11.xls "); header("Content-Transfer-Encoding: binary "); ?>

Php代码

0.<?    0.$filename="php导入到excel-utf-8编码";    0.echo $filename;    0.?>

访问网站的时候就下载到excel里面
要弄单元格区别的话
用table表格做网页的就可以了
====================== 其他方法 =============================
1、制作简单 Excel

0.<?php   0.header("Content-type:application/vnd.ms-excel");   0.header("Content-Disposition:filename=php2excel.xls");   0.  0.echo "A1/t B1/t C1/n";   0.echo "A2/t B2/t C2/n";   0.echo "A3/t B3/t C3/n";   0.echo "A4/t B4/t C4/n";   0.?>

2、制作简单 CSV

<?php$action =$_GET['action'];if ($action=='make'){ $fp = fopen("demo_csv.csv","a"); //打开csv文件,如果不存在则创建 $title = array("First_Name","Last_Name","Contact_Email","Telephone"); //第一行数据 $data_1 = array("42343","423432","4234","4234");  $data_2 = array("4234","Last_Name","Contact_Email","Telephone");  $title = implode(",",$title); //用 ' 分割成字符串 $data_1 = implode(",",$data_1); // 用 ' 分割成字符串 $data_2 = implode(",",$data_2); // 用 ' 分割成字符串 $data_str =$title."/r/n".$data_1."/r/n".$data_2."/r/n"; //加入换行符 fwrite($fp,$data_str); // 写入数据 fclose($fp); //关闭文件句柄 echo "生成成功";}echo "<br>";echo "<a href='?action=make'>生成csv文件</a>";?>

也可以做一个封闭函数:
封闭函数一:

function exportToCsv($csv_data, $filename = 'export.csv') {    $csv_<em>/本2文来源[email protected]搞@^&代*@码2网</em><strong>搞gaodaima代码</strong>terminated = "/n";    $csv_separator = ",";    $csv_enclosed = '"';    $csv_escaped = "//";    // Gets the data from the database    $schema_insert = '';    $out = '';    // Format the data    foreach ($csv_data as $row)    {        $schema_insert = '';        $fields_cnt = count($row);        //printr($row);        $tmp_str = '';        foreach($row as $v)        {            $tmp_str .= $csv_enclosed.str_replace($csv_enclosed, $csv_escaped . $csv_enclosed, $v).$csv_enclosed.$csv_separator;        } // end for        $tmp_str = substr($tmp_str, 0, -1);        $schema_insert .= $tmp_str;        $out .= $schema_insert;        $out .= $csv_terminated;    } // end while    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");    header("Content-Length: " . strlen($out));    header("Content-type: text/x-csv");    header("Content-Disposition:filename=$filename");    echo $out;}/*$csv_data = array(array('Name', 'Address'));array_push($csv_data, array($row['name'],$row['address']));...exportToCsv($csv_data,'new_file.csv');*/

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:基于php导出到Excel或CSV的方法

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址