成都网站建设设计

将想法与焦点和您一起共享

php大数据导出方案,大数据量导出方案

PHP导出100万数据到excel

php导出数据excel有专门的库,当导出少量数据的时候速度很快,但是当数据量大的时候就会存在服务器内存不够之类的。

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、重庆小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了汉台免费建站欢迎大家使用!

所以在导出大量数据的时候就应该分页查询数据,避免服务器宕机。正好PHP提供了fputcsv函数可以将数据写入到csv文件中。

这样我们就可以使用PHP对数据进行分页查询,再写入到csv文件中。

php导出数据到excel 格式设置

$name = iconv("utf-8","gbk",'二级学院列表');;

header("Content-Type: application/vnd.ms-excel");

header("Content-Disposition: attachment; filename=$name.xls");

//第三行的 name.xls这个xls可以自己改,不过大数据的导出建议使用专业的类,如phpexcel.

php 怎么把数据导出到excel表格

php 把数据导出到excel表格有多种方法,比如使用 phpExcel 等,以下代码是直接通过 header 生成 excel 文件的代码示例:

?php

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 "tabletr";

//导出表头(也就是表中拥有的字段)

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

$t_field[] = $row['Field']; //Field中的F要大写,否则没有结果

echo "th".$row['Field']."/th";

}

echo "/tr";

//导出100条数据

$sql = "select * from users limit 100";

$res = mysql_query($sql);

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

echo "tr";

foreach($t_field as $f_key){

echo "td".$row[$f_key]."/td";

}

echo "/tr";

}

echo "/table";

?

php怎么导出大量数据的Excel

微软的Excel设置单元格行数默认是6万行rows,相对的讲其实当我们超过1万行的时候已经是大数据的导出。

好比:有客户10000人,平均每人每天产生10条活动记录,要导出上周所有的客户活动记录: 10000*10*7=700000

估计看70万行的Excel这个人会疯掉的,我们的建议是分批次导出,按时间导出到不同的excel

下面是一个PHPExcel官方的Demo(已修改过)

复制代码

define('EOL', 'br /');

$objPHPExcel = new \app\extensions\PHPExcel\PHPExcel();

ini_set("memory_limit", "1024M"); // 设置php可使用内存

$cacheMethod = \PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip;

if (!\PHPExcel_Settings::setCacheStorageMethod($cacheMethod)) {

die($cacheMethod . " 缓存方法不可用" . EOL);

}

echo date('H:i:s'), " 当前使用的缓存方法是: ", $cacheMethod, " 方式", EOL;

echo date('H:i:s'), " 开始设置文档属性", EOL;

$objPHPExcel-getProperties()-setCreator("Maarten Balliauw")

-setLastModifiedBy("Maarten Balliauw")

-setTitle("Office 2007 XLSX Test Document")

-setSubject("Office 2007 XLSX Test Document")

具体的还有很多写不下,我是在后盾人看的教学视频无意中学到的,正好解答给你希望能帮到你

php如何导出数据

php导出数据有两种方式,一种是通过封装好的phpexcel导出,一种是通过table导出数据,指定header就可以导出数据。

上面是导出到excel中的方法,当然你也可以导出数据直接到数据库,或者你也可以到处数据到文件中,这个主要看你导出数据的格式要求。

看你截图显示的是数组格式,可以通过循环遍历然后导入到响应的文件中。

如何用php导出导入大数据库

在使用PhpMyAdmin的时候经常用到数据的导入和导出(Export/Import),但是在导入大数据的时候由于php上传文件的限制和脚本响应时间的限制,导致phpMyAdmin无法导入大数据。很多时候都是由于文件过大,从本地浏览上传导入,容易中断失败,有没有更好的方法呢?

方法:

在phpMyAdmin的目录下,找到根目录的config.inc.php文件,

打开config.inc.php文件,查找$cfg['UploadDir'],这个参数就是设定导入文件存放的目录,这里把值设定为:ImportSQLFile。

在phpMyAdmin目录下,建立以ImportSQLFile命名的文件夹,

把我们需要导入的数据文件,放到ImportSQLFile文件夹下面,非常简单,

登入phpMyAdmin,选择需要导入的数据,点击导航条上面的“导入”按钮,

选中“从网站服务器上传文件夹ImportSQLFile/中选择:”选项,并需要导入的数据文件,

最后点击“执行”,即可导入成功。

注意事项

如果在config.inc.php文件,没有找到$cfg['UploadDir'],可以自己在文件中添加上去即可。


文章标题:php大数据导出方案,大数据量导出方案
文章分享:http://chengdu.cdxwcx.cn/article/hdjepg.html