加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

excel的导出和下载(实例讲授)

发布时间:2021-03-07 13:40:02 所属栏目:编程 来源:网络整理
导读:1、媒介 偶然必要将数据库表资源导出excel,做成一些报表数据。 而php导出excel的要领大抵有几种: 1. 行使php的类库,举办导出,如PHPExcel 2.行使php原生的要领举办导出 而本文先容的就是,怎样通过原生要教育出excel 2、要害函数 2.1、ob输出 ob_start();
副问题[/!--empirenews.page--]

1、媒介

偶然必要将数据库表资源导出excel,做成一些报表数据。

而php导出excel的要领大抵有几种:

1. 行使php的类库,举办导出,如PHPExcel

2.行使php原生的要领举办导出

而本文先容的就是,怎样通过原生要教育出excel

2、要害函数

2.1、ob输出

•ob_start(); •ob_get_contents •ob_end_clean •fopen •fwrite •fclose •iconv

2.2、header输出

1.header 2.iconv

3、行使ob函数举办excel到导出

ob函数首要分为三步:

1.举办缓存的配置 2.读取缓存 3.写入文件

下面贴上导出的excel类

4、完备页面代码

$sql = 'select * from user';
$res = $link->query($sql);
//判定是否有发送get数据
if(isset($_GET['id'])){
$name = empty($_GET['id']) ? 'a' . rand(1000,9999) : $_GET['id'] ;
$filename = $name . '.xls';
//配置缓存的开始
Excel::start();
}
?>
<?php
//页面输出一样平常是不必要转码的,excel输出才必要转码
echo '';
echo '<tr>';
//配置thead输出
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar('编号') . '</td>';
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar('用户名') . '</td>';
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar('暗码') . '</td>';
echo '</tr>';
?>
<?php
echo '';
//配置tbody输出
while($re = $res->fetch(PDO::FETCH_ASSOC)){
echo '<tr>';
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar($re['id']) . '</td>';
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar($re['user']) . '</td>';
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar($re['pwd']) . '</td>';
echo '</tr>';
}
echo '</table>';
?>
<?php
if(isset($_GET['id'])){
//生涯文件
Excel::save($filename);
}
if(isset($_GET['id'])){
echo '' .Excel::setChar('完成') .'';
}else{
echo '' . Excel::setChar('导出') .'';

}
?>

5、行使header下载excel

行使ob函数导出excel只能生涯随处事器,不能提供下载(非凡处理赏罚下照旧可以的);下面先容行使header()函数来导出并下载excel

首要两个header()函数

其他做法和ob函数的导出沟通(下面完备代码)

//下载首要靠这两个
header("Content-type:application/vnd.ms-excel");//指定文件范例
header("Content-Disposition:filename=a.xls" ); //指定下载文件名
require 'coon.php';
require 'excel.class.php';
$sql = 'select * from user';
$res = $link->query($sql);
?>

<?php
//页面输出一样平常是不必要转码的,excel输出才必要转码
echo '

';
echo '<tr>';
//配置thead输出
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar('编号') . '</td>';
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar('用户名') . '</td>';
echo '<td style="border-bottom:1px solid black;padding:10px;text-align:center;">' . Excel::setChar('暗码') . '</td>';
echo '</tr>';
?>

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!