PHP导出excel文件,第二步先实现自写二维数组加入模板excel文件后导出
今天主要研究数据加入EXCEL并导出的问题,先不从数据库提取数据导出,自己先写一个二维数组,然后遍历二维数组写入excel模板中导出,首先根据模板excel的内容书写对应的二维数组
$arr=array(array("111-3004394-8497032","UMN207-05MM","UMN207-05MM","2","Eric S Herbert / Entergy","600 Rockyhill Rd","PNPS"," ","plymouth","ma","02360","US","508 830-8823","","","","","","","1",""),
array("112-3297805-3545827","UMN207-05MM","UMN207-05MM","1","Yibai Liao","11 BANNISTER DR"," "," ","HOPEWELL JUNCTION"," ","12533-8204","US","9175926724","","","","","","","1",""));
然后用foreach遍历二维数组并写入模板excle文件具体代码如下
$row=2;
foreach ($arr as $order)
{
$col=0;
foreach($order as $val)
$objPHPExcel->setActiveSheetIndex()->setCellValueByColumnAndRow($col, $row, $val);
$col++;
}
$row++;
}
$row为行,指定从第二行插入数据,并且循环换行, $val为二维数组数据,$col为列,基本实现数据写入excel表格并导出,整体代码如下:
<?php
if($_POST['eub']==1)
{
header("location:ListOrders.php?t=OrderStatus&fc=all&orderstatus=Unshipped&range=14&submit=Go");
}
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
date_default_timezone_set('Europe/London');
if (PHP_SAPI == 'cli')
die('This example should only be run from a Web Browser');
/** Include PHPExcel */
require_once dirname(__FILE__) . '/../plugins/PHPExcel-1.8/Classes/PHPExcel.php';
// Create new PHPExcel object
$objPHPExcel = new PHPExcel();
// Read from Excel2007 (.xlsx) template
//echo date('H:i:s') , " Load Excel5 template file" , EOL;
$objReader = PHPExcel_IOFactory::createReader('Excel5');
$objPHPExcel = $objReader->load("../template/eub.xls");
//print_r($objPHPExcel);
//die();
$filename = "eub-".date("YmdHis").".xls";
$row = 2;
// Add some data
$arr=array(array("111-3004394-8497032","UMN207-05MM","UMN207-05MM","2","Eric S Herbert / Entergy","600 Rockyhill Rd","PNPS"," ","plymouth","ma","02360","US","508 830-8823","","","","","","","1",""),
array("112-3297805-3545827","UMN207-05MM","UMN207-05MM","1","Yibai Liao","11 BANNISTER DR"," "," ","HOPEWELL JUNCTION"," ","12533-8204","US","9175926724","","","","","","","1",""));
foreach ($OrderList as $order)
{
$col=0;
foreach($order as $val)
$objPHPExcel->setActiveSheetIndex()->setCellValueByColumnAndRow($col, $row, $val);
$col++;
}
$row++;
}
// Redirect output to a client’s web browser (Excel2007)
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset="GB2312"');
header('Content-Disposition: attachment;filename="'.$filename.'"');
header('Cache-Control: max-age=0');
// If you're serving to IE 9, then the following may be needed
header('Cache-Control: max-age=1');
// If you're serving to IE over SSL, then the following may be needed
header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified
header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
header ('Pragma: public'); // HTTP/1.0
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
exit;
?>
下一步就是从数据库读取数据写入excel模板表并导出的实现过程。
PHP导出excel文件,第二步先实现自写二维数组加入模板excel文件后导出的更多相关文章
- 将一,二维数组转化为Excel格式
首先,我们来看一下一维数组的, 其代码可以如下: import numpy as np import pandas as pd x = pd.Series([1, 3, 5, np.nan]) pri ...
- excel解析二维数组结构的excel
public void fileImport(Ufile ufile) throws Exception { String filePath = ufile.getFilePath(); List&l ...
- Excel 二维数组(数据块)旋转/翻转技巧
Excel 二维数组(数据块)旋转/翻转技巧 原创 2017-12-30 久石六 久石六 工作中遇到个问题,需要将Excel中的数据块或者说二维数组向右旋转90度,才能再加工处理.当然,不是旋转文本方 ...
- php上传excle文件,csv文件解析为二维数组
解析上传的CSV文件不是什么难事,直接读取转成你想要的数组样子就OK了. public function putStoreStockIn ($filePath = '') { $file = fope ...
- 从txt文件中读取数据放在二维数组中
1.我D盘中的test.txt文件内的内容是这样的,也是随机产生的二维数组 /test.txt/ 5.440000 3.4500006.610000 6.0400008.900000 3.030000 ...
- PHP —— 读取文件到二维数组
转自:PHP读取自定义ini文件到二维数组 读取文件,可以使用file_get_contents,file,parse_ini_file等,现在有一个需求,需要读取如下格式的文件: [food] ap ...
- Android 在资源文件(res/strings.xml)定义一维数组,间接定义二维数组
经常我们会在资源文件(res/strings.xml)定义字符串,一维数组,那定义二维数组?直接定义二维数组没找到,可以间接定义. 其实很简单,看过用过一次就可以记住了,一维数组估计大家经常用到,但是 ...
- Java读取excel指定sheet中的各行数据,存入二维数组,包括首行,并打印
1. 读取 //读取excel指定sheet中的各行数据,存入二维数组,包括首行 public static String[][] getSheetData(XSSFSheet sheet) thro ...
- 将String类型的二维数组中的元素用FileOutputStream的write方法生成一个文件
将String类型的二维数组中的元素用FileOutputStream的write方法生成一个文件import java.io.File;import java.io.FileOutputStre ...
随机推荐
- stand up meeting 1/8/2016 & weekend 1/9/2016~1/10/2016 && sprint2扫尾
part 组员 工作 工作耗时/h 明日计划 工作耗时/h UI 冯晓云 跑通打印机功能,尝试与pdf读取部分结合 6 查漏补缺, ...
- stand up meeting for beta release plan 12/16/2015
今天我们开会讨论一下beta版需要的feature,其中待定的feature是可选做的,如果有时间.其他都是必须实现的. 因为做插件的计划失败了,所以我们现在是pdf阅读器和取词查词加入生词本这两部分 ...
- 谁说 Vim 不好用?送你一个五彩斑斓的编辑器!
相信大家在使用各种各样强大的 IDE 写代码时都会注意到,代码中各种类型的关键字会用独特的颜色标记出来,然后形成一套语法高亮规则.这样不仅美观,而且方便代码的阅读. 而在上古神器 Vim 中,我们通常 ...
- Numpy学习-(1)
记录我学习Numpy过程 1. 介绍 (1)NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库 ...
- vue2.x学习笔记(十六)
接着前面的内容:https://www.cnblogs.com/yanggb/p/12616543.html. 组件中的插槽 在2.6.0的版本中,vue为具名插槽和作用域插槽引入了一个新的统一的语法 ...
- react-devtools安装调试
初学react,Chrome F12调试,需要一款插件react-devtools. 网上大多对于翻墙不利索的同学大多才用了git源码.npm本地手动打包Chrome拓展程序.如:https://ww ...
- Oracle计算数值型的幂次方——POWER()
Oracle计算数值型的幂次方 简介:幂次方就是幂函数的变形,在POWER(value1,value2)中,value1就是函数的底数,value2就是函数的指数.如:POWER(value1,val ...
- 3. JS生成32位随机数
function randomWord ( randomFlag,min,max ) { var str = " ", range = min, arr = ['0','1','2 ...
- ubuntu-18.0.4 samba安装
(1)安装 sudo apt-get -y install samba samba-common (2)创建一个用于分享的samba目录. mkdir /home/myshare (3)给创建的这个目 ...
- selemiun 问题总结
1.如果打开一个网页定位一个元素时发现不能够定位某一个元素,并且定位的方法没问题,则需要看下该网页是否有frame框架 解决办法: 如果有frame框架则需要先切换到frame框架下: driver. ...