找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1207|回复: 0
打印 上一主题 下一主题

php原生导出excel文件的两种方法(推荐)

[复制链接]

2560

主题

2560

帖子

7622

积分

论坛元老

Rank: 8Rank: 8

积分
7622
跳转到指定楼层
楼主
发表于 2018-2-14 05:30:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            第一种方法:
$filename='文件名称';
  $filetitle='你的标题';
  if($_POST){
    set_time_limit(10000);
    $title = '';
    ini_set('memory_limit','300M');
    header('Content-Type: application/vnd.ms-excel;charset=utf-8');
    $name = $title.".xls";
    header('Content-Disposition: attachment;filename='.$name.'');
    header('Cache-Control: max-age=0');
    $where = "1=1";
    $sql = "";
    $query = DB:uery($sql);
    // PHP文件句柄,php://output 表示直接输出到浏览器
    $fp = fopen('php://output', 'a');
    // 输出Excel列头信息
    $head = array('ID');
    //字符替换
    $p_new_lines = array("\r\n", "\n","\t","\r","\r\n", "","","
","","
");
    $p_change_line_in_excel_cell = '';
    foreach($head as $v){
      echo iconv('utf-8','gb2312',$v) . "\t";
    }
    echo "\n";
    // 计数器
    $cnt = 0;
    // 每隔$limit行,刷新一下输出buffer,节约资源
    $limit = 100000;
    // 逐行取出数据,节约内存
    while ($res = mysql_fetch_assoc($query)) {
      $cnt ++;
      if ($limit == $cnt) { //刷新一下输出buffer,防止由于数据过多造成问题
        ob_flush();
        flush();
        $cnt = 0;
      }
      echo trim($res['id']). "\t";
      echo "\n";
    }
  }
第二种方法:
$filename='文件名称';
  $filetitle='你的标题';
  if($_POST){
    $title = '';
    ini_set('memory_limit','300M');
    header('Content-Type: application/vnd.ms-excel;charset=utf-8');
    $name = $title.".xls";
    header('Content-Disposition: attachment;filename='.$name.'');
    header('Cache-Control: max-age=0');
    echo '
   
      
      
      
      
      
      
      
      
        
      
      
      
      
      
    ';
    $where = "1=1";
    $sql = " ";
    mysql_query('set names "utf8"');
    mysql_set_charset('utf8');
    $query = DB:uery($sql);
    // PHP文件句柄,php://output 表示直接输出到浏览器
    $fp = fopen('php://output', 'a');
    // 输出Excel列头信息
    $head = array('ID','xxx');
    //字符替换
    $p_new_lines = array("\r\n", "\n","\t","\r","\r\n", "","","
","","
");
    $p_change_line_in_excel_cell = '';
    echo "";
    echo "";
    foreach($head as $v){
      echo "".iconv('utf-8','gb2312',$v)."";
    }
    echo "";
    // 逐行取出数据,节约内存
    while ($res = mysql_fetch_assoc($query)) {
      echo "";
      echo "".$res['id']."";
      echo "".iconv('utf-8', 'gb2312', $res['xxx']."";
      echo"";
    }
    echo "";
  }
以上这篇php原生导出excel文件的两种方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
            
            
您可能感兴趣的文章:
  • PHP导入导出Excel代码
  • PHP使用PHPexcel导入导出数据的方法
  • PHP导出Excel实例讲解
  • PHP导出带样式的Excel示例代码
  • PHP实现导出excel数据的类库用法示例
  • 完美解决phpexcel导出到xls文件出现乱码的问题
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端