php怎么导出大量数据的Excel
昨天项目里有个新需求百,客户希望把一些数据能导出成为Excel表格,刚开始用PHP原生输入Excel表格,发现效果度不是很理想,于是找到一个比较著名的库:PHPExcel。下面是版一个简单的demo,分享给大家,希望可以帮到有同样需求的权朋友。
网页链接
php怎么把数据生成excel表格
昨天项目里有个新需求百,客户希望把一些数据能导出成为Excel表格,刚开始用PHP原生输入Excel表格,发现效果度不是很理想,于是找到一个比较著名的库:PHPExcel。下面是版一个简单的demo,分享给大家,希望可以帮到有同样需求的权朋友。
网页链接
PHP怎样将查询出来的数据导出成excel表格?
讲的复杂了啊!
你先在一个完整版的PHPExcel之后解压,在“Examples”目录下会找到一大堆例子,根据你的要求这个“01simple-download-xlsx.php”文件就可以了!
注:你先保持“01simple-download-xlsx.php”文件所在的目录位置不要变,测试好了,再改变名,移到别的地方,地方变了的话,文件里的 “require_once dirname(__FILE__) . '/../Classes/PHPExcel.php';”的所在位置也要变!
我们要改动代码很少,如下:
// Add some data
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', 'Hello')
->setCellValue('B2', 'world!')
->setCellValue('C1', 'Hello')
->setCellValue('D2', 'world!');
// Miscellaneous glyphs, UTF-8
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A4', 'Miscellaneous glyphs')
->setCellValue('A5', 'éàèe799bee5baa6e79fa5e98193e78988e69d8331333365636639ùâêîôûëïüÿäöüç');
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
直接用的我的替换
$objPHPExcel->setActiveSheetIndex(0)//这个就是现实导出的表第一行,有几列是根据你的那张表有几列!
->setCellValue('A1', '单号')
->setCellValue('B1', '标题')
->setCellValue('C1', '内容')
->setCellValue('D1', '序列')
->setCellValue('E1', '数字');
//下面实现的就是建立数据库连接,直接到表,你的连接数据库、表、字段应该与我的不一样,你可以参考
$conn=@mysql_connect("localhost","root","root") or die("数据库服务器连接错误".mysql_error());//连接mysql数据库
mysql_select_db("temp",$conn) or die("数据库访问错误".mysql_error());//数据库
mysql_query("set character set gb2312");
mysql_query("set names gb2312");
$sqlgroups="select * from test ";//查询这一张表的条件
$resultgroups=mysql_query($sqlgroups);
$numrows=mysql_num_rows($resultgroups);
if ($numrows>0)
{
$count=1;
while($data=mysql_fetch_array($resultgroups))
{
$count =1;
$l1="A"."$count";
$l2="B"."$count";
$l3="C"."$count";
$l4="D"."$count";
$l5="E"."$count";
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue($l1, $data['id'])//这就是你要导出表的字段、与对应的名称
->setCellValue($l2, $data['title'])
->setCellValue($l3, $data['content'])
->setCellValue($l4, $data['sn'])
->setCellValue($l5, $data['num']);
}
}
PHP如何导出当前页面中的表格至Excel
php 把数据导出到excel表格有多种方法,比如使用 phpExcel 等,以下代码是直接通过 header 生成 excel 文件的代码示例:
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=xls_region.xls");
$cfg_dbhost = 'localhost';
$cfg_dbname = 'testdb';
$cfg_dbuser = 'root';
$cfg_dbpwd = 'root';
$cfg_db_language = 'utf8';
// END 配置
//链接数据库
$link = mysql_connect($cfg_dbhost,$cfg_dbuser,$cfg_dbpwd);
mysql_select_db($cfg_dbname);
//选择编码
mysql_query("set names ".$cfg_db_language);
//users表
$sql = "desc users";
$res = mysql_query($sql);
echo "";
//导出表头(也就是表中拥有的字段)
while($row = mysql_fetch_array($res)){
$t_field[] = $row['Field']; //Field中的F要大写,否则没有结果
echo "".$row['Field']."";
}
echo "";
//导出100条数据
$sql = "select * from users limit 100";
$res = mysql_query($sql);
while($row = mysql_fetch_array($res)){
echo "";
foreach($t_field as $f_key){
echo "".$row[$f_key]."";
}
echo "";
}
echo "";
?>
PHP如何将查询出来的数据导出成excel表格
讲的复杂了啊!
你先在一个完整版的PHPExcel之后解压,在“Examples”目录下会找到一大堆例子,根据你的要求这个“01simple-download-xlsx.php”文件就可以了!
注:你先保持“01simple-download-xlsx.php”文件所在的目录位置不要变,测试好了,再改变名,移到别的地方,地方变了的话,文件里的 “require_once dirname(__FILE__) . '/../Classes/PHPExcel.php';”的所在位置也要变!
我们要改动代码很少,如下:
// Add some data
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', 'Hello')
->setCellValue('B2', 'world!')
->setCellValue('C1', 'Hello')
->setCellValue('D2', 'world!');
// Miscellaneous glyphs, UTF-8
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A4', 'Miscellaneous glyphs')
->setCellValue('A5', 'éàèe799bee5baa6e79fa5e98193e78988e69d8331333365636639ùâêîôûëïüÿäöüç');
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
直接用的我的替换
$objPHPExcel->setActiveSheetIndex(0)//这个就是现实导出的表第一行,有几列是根据你的那张表有几列!
->setCellValue('A1', '单号')
->setCellValue('B1', '标题')
->setCellValue('C1', '内容')
->setCellValue('D1', '序列')
->setCellValue('E1', '数字');
//下面实现的就是建立数据库连接,直接到表,你的连接数据库、表、字段应该与我的不一样,你可以参考
$conn=@mysql_connect("localhost","root","root") or die("数据库服务器连接错误".mysql_error());//连接mysql数据库
mysql_select_db("temp",$conn) or die("数据库访问错误".mysql_error());//数据库
mysql_query("set character set gb2312");
mysql_query("set names gb2312");
$sqlgroups="select * from test ";//查询这一张表的条件
$resultgroups=mysql_query($sqlgroups);
$numrows=mysql_num_rows($resultgroups);
if ($numrows>0)
{
$count=1;
while($data=mysql_fetch_array($resultgroups))
{
$count =1;
$l1="A"."$count";
$l2="B"."$count";
$l3="C"."$count";
$l4="D"."$count";
$l5="E"."$count";
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue($l1, $data['id'])//这就是你要导出表的字段、与对应的名称
->setCellValue($l2, $data['title'])
->setCellValue($l3, $data['content'])
->setCellValue($l4, $data['sn'])
->setCellValue($l5, $data['num']);
}
}