<?php
class Excel
{
// ob函数缓存的开始
public static function start ()
{
ob_start();
}
// 获取缓存内容
public static function save ($path)
{
$data = ob_get_contents();
ob_end_clean();
self::writeToExcel($path, $data);
}
//写到文件
private static function writeToExcel ($fn, $data)
{
$dir = self::setDir();
$fp = fopen($dir . '/'. $fn, 'wb');
fwrite($fp, $data);
fclose($fp);
}
//excel默认是GKB,所有要转码
public static function setChar ($value, $inchar = 'utf-8', $outchar ='gbk')
{
return iconv($inchar, $outchar, $value);//转化编码
}
//创建目录,linux系统一般要写到文件,目录需要w谦虚,而文件需要x权限,为了省事直接建立子文件夹,可以不需要修改谦虚
public static function setDir($dirName = 'excel')
{
if(!is_dir($dirName)) {
mkdir($dirName);
}
return $dirName;
}
}
<?php
header('Content-Type: text/html; charset=GBK'); //excel需要GBK编码,为了防止转码产生的乱码,需要设置成GBK
require 'coon.php';
require 'excel.class.php';
$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 '<table width=500 height=25 border=0 align=center cellpadding=0 cellspacing=0>';
echo '<thead><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 '</thead></tr>';
?>
<?php
echo '<tbody>';
//设置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 '</tbody></table>';
?>
<?php
if(isset($_GET['id'])){
//保存文件
Excel::save($filename);
}
if(isset($_GET['id'])){
echo '<a href="obexcel.php" rel="external nofollow" >' .Excel::setChar('完成') .'</a>';
}else{
echo '<a href="obexcel.php?id" rel="external nofollow" >' . Excel::setChar('导出') .'</a>';
}
?>
header("Content-type:application/vnd.ms-excel");//指定文件类型
header("Content-Disposition:filename=a.xls" ); //指定下载文件名
<?php
//下载主要靠这两个
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 '<table width=500 height=25 border=0 align=center cellpadding=0 cellspacing=0>';
echo '<thead><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 '</thead></tr>';
?>
<?php
echo '<tbody>';
//设置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 '</tbody></table>';
?>
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有