php导出excel简便版(php导出excel报表)

本文目录一览:

php怎么导出大量数据的Excel

php导出大量数据到Excel,可以通过生成多个Excel文件,然后压缩成压缩包解决。

方案是:假如我们数据库有10w条数据,每2000条数据生成一个Excel文件,这样每次只要从数据库里查询出2000条数据即可,一定要分页去查询。

原因:主要是数据库性能和写文件性能。分页查询可以解决数据库压力的问题, 生成多个文件可以解决单个文件太大,后期维护Excel文件的问题。

要注意的:

1. 在导出逻辑文件开头,一定要声明 set_time_limit(0) ,防止脚本超时;

2. 每个文件生成后,适当的sleep一下,让程序休息一下下;

3. 因为一次导出最后要将生成的多个Excel文件打包成一个压缩包,所以要删除掉生成的Excel文件,节省服务器存储空间;

下面是我实际工作中,写的一个php导出大量数据到Excel的代码,你可以参考一下:

PHP如何导出当前页面中的表格至Excel

1.

这属于php的技术;

2.

php可以用PHPExcel直接导出成excel文件;

代码如下:

require_once(“../lib/excelcreator.class.php”);

$myxls

=

new

ExcelCreator

(“中文Excel”);

$aTableHead

=

Row

ss:AutoFitHeight=”0″

CellData

ss:Type=”String”Name3/Data/Cell

CellData

ss:Type=”String”Surname3/Data/Cell

/Row’;

$aTableBody

=

Row

ss:AutoFitHeight=”0″

CellData

ss:Type=”String”Schwarz3/Data/Cell

CellData

ss:Type=”String”Oliver3/Data/Cell

/Row’;

$aTableBottom

=

Row

ss:AutoFitHeight=”0″

CellData

ss:Type=”String”123/Data/Cell

CellData

ss:Type=”String”Peter3/Data/Cell

/Row’;

$workSheet

=

$myxls-createWorkSheet

(

“中文sheet1”,

$aTableHead,

$aTableBody,

$aTableBottom

);

echo

$myxls-createExcel

(

$workSheet

);

PHP如何导出Excel文件

昨天项目里有个新需求,客户希望把一些数据能导出成为Excel表格,刚开始用PHP原生输入Excel表格,发现效果不是很理想,于是找到一个比较著名的库:PHPExcel。下面是一个简单的demo,分享给大家,希望可以帮到有同样需求的朋友。

1.百度:phpexcel,结果如图所示,点击第一个结果;

PHP导出Excel,PHP输入Excel

2.进入官网后,找到右边的download按钮,下载,下载完成的是一个压缩文件,解压放到你的项目目录里,根据个人情况而定;

PHP导出Excel,PHP输入Excel

PHP导出Excel,PHP输入Excel

3.因为这里给大家做演示,所以建了一个测试文件,有点基础的都能明白是怎么回事,下面进入代码;

PHP导出Excel,PHP输入Excel

4.

//引入PHPExcel库文件(路径根据自己情况)

include ‘./phpexcel/Classes/PHPExcel.php’;

//创建对象

$excel = new PHPExcel();

//Excel表格式,这里简略写了8列

$letter = array(‘A’,’B’,’C’,’D’,’E’,’F’,’F’,’G’);

//表头数组

$tableheader = array(‘学号’,’姓名’,’性别’,’年龄’,’班级’);

//填充表头信息

for($i = 0;$i count($tableheader);$i++) {

$excel-getActiveSheet()-setCellValue(“$letter[$i]1″,”$tableheader[$i]”);

}

PHP导出Excel,PHP输入Excel

5.

//表格数组

$data = array(

array(‘1′,’小王’,’男’,’20’,’100′),

array(‘2′,’小李’,’男’,’20’,’101′),

array(‘3′,’小张’,’女’,’20’,’102′),

array(‘4′,’小赵’,’女’,’20’,’103′)

);

//填充表格信息

for ($i = 2;$i = count($data) + 1;$i++) {

$j = 0;

foreach ($data[$i – 2] as $key=$value) {

$excel-getActiveSheet()-setCellValue(“$letter[$j]$i”,”$value”);

$j++;

}

}

PHP导出Excel,PHP输入Excel

6.

//创建Excel输入对象

$write = new PHPExcel_Writer_Excel5($excel);

header(“Pragma: public”);

header(“Expires: 0”);

header(“Cache-Control:must-revalidate, post-check=0, pre-check=0”);

header(“Content-Type:application/force-download”);

header(“Content-Type:application/vnd.ms-execl”);

header(“Content-Type:application/octet-stream”);

header(“Content-Type:application/download”);;

header(‘Content-Disposition:attachment;filename=”testdata.xls”‘);

header(“Content-Transfer-Encoding:binary”);

$write-save(‘php://output’);

PHP导出Excel,PHP输入Excel

7.打开页面,刷新的时候会弹出对话框,让你选择文件保存路径和文件名称,我直接放在了桌面上,如图所示;

PHP导出Excel,PHP输入Excel

PHP导出Excel,PHP输入Excel

8.打开表格后,数据和格式跟代码中的一致,说明PHP导出的Excel是正确的。如果出现错误,检查一下你的表格数组和数据数组吧。

PHP导出Excel,PHP输入Excel

如何使用PHP导出csv和excel文件

(一)phpexcel文件导出:

步骤1,引入文件require APPPATH.’/libraries/PHPExcel.PHP’;

步骤2, 实例化PHPEXCEL对象 $objPHPExcel=new PHPExcel();

步骤3, 设置表头 $column = array(‘A’,’B’,’C’); $line = array(‘词语’,’频次’,’词性’);

//填充表头信息

for($i = 0;$i count($tableheader_all);$i++) {

$objPHPExcel-getActiveSheet()-setCellValue(“$letter[$i]1″,”$tableheader[$i]”);

//上一行中”$letter[$i]1″表示第“1”行第“$i”列

}

步骤4, 填充数据

for ($i = 2;$i = count($data) + 1;$i++) {//因为内容是从第二行开始的,所以i=2表示从第二行开始填充数据

$j = 0;

foreach ($tmp as $key=$val ){

$objPHPExcel-getActiveSheet()-setCellValue(“$letter[$j]$i”,$data[$i-2][$val]); //数据是从第一条开始但是i的初值是2所以想从第一条开始应该是$data[$i-2]开始

$j++;

}

}

步骤5,写进excel中并输出

$write = new PHPExcel_Writer_Excel5($objPHPExcel);

header(“Pragma: public”);

header(“Expires: 0”);

header(“Cache-Control:must-revalidate, post-check=0, pre-check=0”);

header(“Content-Type:application/force-download”);

header(“Content-Type:application/vnd.ms-execl”);

header(“Content-Type:application/octet-stream”);

header(“Content-Type:application/download”);;

header(‘Content-Disposition:attachment;filename=”数据导出_词云图.xls”‘);

header(“Content-Transfer-Encoding:binary”);

$write-save(‘php://output’);

(一)CSV文件导出:

csv文件导出最令人头疼的问题就是编码问题,现在分享一下我的经验

首先看服务器是Linux的还是windows的 如果是windows的服务器那么编码问题只能借助于mb_convert_encoding()或者是iconv两个函数相互转换中文编码

如果服务器是linux的 那么很简单 utf-8: setlocale(LC_ALL, ‘en_US.UTF-8′); 简体中文:setlocale(LC_ALL, ‘zh_CN’);

下面来说csv导出步骤:

$result = mysql_query(“select * from student order by id asc”);

$str = “姓名,性别,年龄\n”;

$str = iconv(‘utf-8′,’gb2312’,$str);

while($row=mysql_fetch_array($result)){

$name = iconv(‘utf-8′,’gb2312’,$row[‘name’]); //中文转码

$sex = iconv(‘utf-8′,’gb2312’,$row[‘sex’]);

$str .= $name.”,”.$sex.”,”.$row[‘age’].”\n”; //用引文逗号分开

}

$filename = date(‘Ymd’).’.csv’; //设置文件名

export_csv($filename,$str); //导出

要将数据导出到本地即下载,需要修改header信息,代码如下:

function export_csv($filename,$data) {

header(“Content-type:text/csv”);

header(“Content-Disposition:attachment;filename=”.$filename);

header(‘Cache-Control:must-revalidate,post-check=0,pre-check=0’);

header(‘Expires:0’);

header(‘Pragma:public’);

echo $data;

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/304641.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2025-01-01 11:05
下一篇 2025-01-01 11:05

相关推荐

  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • PHP怎么接币

    想要在自己的网站或应用中接受比特币等加密货币的支付,就需要对该加密货币拥有一定的了解,并使用对应的API进行开发。本文将从多个方面详细阐述如何使用PHP接受加密货币的支付。 一、环…

    编程 2025-04-29
  • 为什么不能用Microsoft Excel进行Python编程?

    Microsoft Excel是一个广泛使用的数据分析工具,但是它不能直接用于Python编程。这是因为Microsoft Excel并不是一个编程工具,它的主要功能是进行数据处理…

    编程 2025-04-29
  • 使用PHP foreach遍历有相同属性的值

    本篇文章将介绍如何使用PHP foreach遍历具有相同属性的值,并给出相应的代码示例。 一、基础概念 在讲解如何使用PHP foreach遍历有相同属性的值之前,我们需要先了解几…

    编程 2025-04-28
  • 基尼系数Excel计算模板

    这篇文章将介绍基尼系数Excel计算模板,为大家详细阐述如何使用Excel进行基尼系数的计算。 一、模板下载及导入 首先需要下载基尼系数的Excel计算模板,可以在Excel中通过…

    编程 2025-04-28
  • PHP获取301跳转后的地址

    本文将为大家介绍如何使用PHP获取301跳转后的地址。301重定向是什么呢?当我们访问一个网页A,但是它已经被迁移到了另一个地址B,此时若服务器端做了301重定向,那么你的浏览器在…

    编程 2025-04-27
  • Morphis: 更加简便、灵活的自然语言处理工具

    本文将会从以下几个方面对Morphis进行详细的阐述: 一、Morphis是什么 Morphis是一个开源的Python自然语言处理库,用于处理中心语言(目前仅支持英文)中的词性标…

    编程 2025-04-27
  • PHP登录页面代码实现

    本文将从多个方面详细阐述如何使用PHP编写一个简单的登录页面。 1. PHP登录页面基本架构 在PHP登录页面中,需要包含HTML表单,用户在表单中输入账号密码等信息,提交表单后服…

    编程 2025-04-27
  • 使用ReoGrid操作Excel的WPf应用

    本文将详细阐述如何使用ReoGrid来操作Excel,重点介绍在WPF应用程序中使用ReoGrid的方法及注意点。 一、ReoGrid简介 ReoGrid是一个基于.NET的开源组…

    编程 2025-04-27
  • PHP与Python的比较

    本文将会对PHP与Python进行比较和对比分析,包括语法特性、优缺点等方面。帮助读者更好地理解和使用这两种语言。 一、语法特性 PHP语法特性: <?php // 简单的P…

    编程 2025-04-27

发表回复

登录后才能评论