php导出数据有两种方式,一种是通过封装好的phpexcel导出,一种是通过table导出数据,指定header就可以导出数据.
上面是导出到excel中的方法,当然你也可以导出数据直接到数据库,或者你也可以到处数据到文件中,这个主要看你导出数据的格式要求.
看你截图显示的是数组格式,可以通过循环遍历然后导入到响应的文件中.
$ar = Array(
Array (
'log_result' = 0,
),
);
foreach($ar as $item) {
@$res[$item['log_data']][strtok($item['log_time'], ' ')] ◆= $item['log_result'];
}
print_r($res);
如果将数据导出成excel,需要用到PHPExcel,这个可以百度一下.
要实现这个功能,代码是比较多的,下面是我的代码,肯定不能兼容你的,需要修改.
if?($_POST["outputExcelBtn"]){
define('EOL',(PHP_SAPI?==?'cli')?PHP_EOL?:?'br?/');
require_once?'PHPExcel/Classes/PHPExcel.php';
$objPHPExcel?=?new?PHPExcel();
$objPHPExcel-getProperties()-setCreator("CG")
-setLastModifiedBy("CG")
-setTitle("CG")
-setSubject("CG")
-setDescription("CG")
-setKeywords("CG")
-setCategory("CG");
$objPHPExcel-getDefaultStyle()-getFont()-setName('Arial')
-setSize(10);
$objPHPExcel-getActiveSheet()-setCellValue('A1',?'编号')
-setCellValue('B1',?'产品名字')
-setCellValue('C1',?'产品属性')
-setCellValue('D1',?'添加日期')
;
$objPHPExcel-getActiveSheet()-setCellValue('A'.$i,?$f["p_num"])
-setCellValue('B'.$i,?$f["p_name"])
-setCellValue('C'.$i,?$f["p_pra"])
-setCellValue('D'.$i,?date('Y-m-d',$f["p_date"]))
$objPHPExcel-getActiveSheet()-getStyle('A'.$i.':D'.$i)-getAlignment()-setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$i◆◆;
$objPHPExcel-getActiveSheet()-getStyle('A1:D1')-getFont()-setBold(true);
$objPHPExcel-getActiveSheet()-getStyle('A1:D1')-getAlignment()-setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);//上下对齐
$objPHPExcel-getActiveSheet()-getStyle('A1:D1')-getAlignment()-setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);?//左右对齐
$objPHPExcel-getActiveSheet()-getStyle('A1:D1')-getFont()-getColor()-setARGB(PHPExcel_Style_Color::COLOR_WHITE);
$objPHPExcel-getActiveSheet()-getStyle('A1:D1')-getFill()-setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objPHPExcel-getActiveSheet()-setTitle('产品表');//重命名工作表
$objPHPExcel-setActiveSheetIndex(0);//设置打开excel时显示的工作表
$callStartTime?=?microtime(true);
$filename='PDT'.(date('Y-m-d'));
因为你说的需要有一个按钮触发事件,所以outputExcelBtn就是按钮名字
input?type="submit"?name="outputExcelBtn"?value="导出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('C1', 'Hello')
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
直接用的我的替换
$objPHPExcel-setActiveSheetIndex(0)//这个就是现实导出的表第一行,有几列是根据你的那张表有几列!
-setCellValue('A1', '单号')
-setCellValue('B1', '标题')
-setCellValue('C1', '内容')
-setCellValue('D1', '序列')
-setCellValue('E1', '数字');
//下面实现的就是建立数据库连接,直接到表,你的连接数据库、表、字段应该与我的不一样,你可以参考
mysql_select_db("temp",$conn) or die("数据库访问错误".mysql_error());//数据库
$sqlgroups="select * from test ";//查询这一张表的条件
$resultgroups=mysql_query($sqlgroups);
$numrows=mysql_num_rows($resultgroups);
if ($numrows0)
{
$count=1;
while($data=mysql_fetch_array($resultgroups))
$count◆=1;
$l1="A"."$count";
-setCellValue($l1, $data['id'])//这就是你要导出表的字段、与对应的名称
根据下列编码程序可以.
①/*** 批量导出数据* @param $arr 从数据库查询出来,即要导出的数据* ?$name excel表歌名*/
以上就是土嘎嘎小编为大家整理的php导出筛选后的数据相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!