700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > php 链接excel表格数据 php 怎么把数据导出到excel表格?php 连接 excel表格数据库数据...

php 链接excel表格数据 php 怎么把数据导出到excel表格?php 连接 excel表格数据库数据...

时间:2020-03-04 17:39:04

相关推荐

php 链接excel表格数据 php 怎么把数据导出到excel表格?php 连接 excel表格数据库数据...

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("setnames".$cfg_db_language);

//users表

$sql="descusers";

$res=mysql_query($sql);

echo"";

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

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

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

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

}

echo"";

//导出100条数据

$sql="select*fromuserslimit100";

$res=mysql_query($sql);

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

echo"

";

foreach($t_fieldas$f_key){

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

}

echo"";

}

echo"";

?>

PHP 用PHPExcel往数据库导入大量数据

奇怪可以有更好的办法解决,

你可以像做分页一样,查询一段插入一段,

这样避免PHP的超时,

有时虽然用limit(0)无限大超时时间,但是大批量数据还是容易出现顺序和丢失的。

导入excel文件,后端php处理导入的数据并存入数据库,需要前后端结合的demo!

thinkphp3.2phpexcel导入最基本用法

先整个最基础的代码解了这个,后面的常简单了

$file_name='./Upload/excel/123456.xls';

import("Org.Util.PHPExcel");

import("Org.Util.PHPExcel.IOFactory");

$objReader=\PHPExcel_IOFactory::createReader('Excel5');

$objPHPExcel=$objReader->load($file_name,$encode='utf-8');

$sheet=$objPHPExcel->getSheet(0);

$highestRow=$sheet->getHighestRow();//取得总行数

$highestColumn=$sheet->getHighestColumn();//取得总列数

$s=$objPHPExcel->getActiveSheet()->getCell("A2")->getValue();

表容:

再给大家整个一点难度的,先说下思路。

1.上传excel文件,得到它的地址

2.写个处理exl的function,即可

实例代码演示:

publicfunctionupload(){

$files=$_FILES['exl'];

//exl格式,否则重新上传

if($files['type']!='application/vnd.ms-excel'){

$this->error('不是Excel文件,请重新上传');

}

//上传

$upload=new\Think\Upload();//实例化上传类

$upload->maxSize=3145728;//设置附件上传大小

$upload->exts=array('xls');//设置附件上传类型

$upload->rootPath='./Upload/';//设置附件上传根目录

$upload->savePath='excel/';//设置附件上传(子)目录

//$upload->subName=array('date','Ym');

$upload->subName='';

//上传文件

$info=$upload->upload();

$file_name=$upload->rootPath.$info['exl']['savepath'].$info['exl']['savename'];

$exl=$this->import_exl($file_name);

//去掉第exl表格中第一行

unset($exl[0]);

//清理空数组

foreach($exlas$k=>$v){

if(empty($v)){

unset($exl[$k]);

}

};

//重新排序

sort($exl);

$count=count($exl);

//检测表格导入成功后,是否有数据生成

if($count<1){

$this->error('未检测到有效数据');

}

//开始组合数据

foreach($exlas$k=>$v){

$goods[$k]['goods_sn']=$v;

//查询数据库

$where['goods_sn']=array('like','%'.$v.'%');

$res=M('goods')->where($where)->find();

$goods[$k]['goods_name']=$res['goods_name'];

$goods[$k]['goods_thumb']=$res['goods_thumb'];

if($res){

//是否匹配成功

$goods[$k]['is_match']='1';

$f =1;

}else{

//匹配失败

$goods[$k]['is_match']='0';

$w =1;

}

}

//实例化数据

$this->assign('goods',$goods);

//print_r($f);

//统计结果

$total['count']=$count;

$total['success']=$f;

$total['error']=$w;

$this->assign('total',$total);

//删除Excel文件

unlink($file_name);

$this->display('info');

}

/*处理上传exl数据

*$file_name文件路径

*/

publicfunctionimport_exl($file_name){

//$file_name='./Upload/excel/123456.xls';

import("Org.Util.PHPExcel");//这里不能漏掉

import("Org.Util.PHPExcel.IOFactory");

$objReader=\PHPExcel_IOFactory::createReader('Excel5');

$objPHPExcel=$objReader->load($file_name,$encode='utf-8');

$sheet=$objPHPExcel->getSheet(0);

$highestRow=$sheet->getHighestRow();//取得总行数

$highestColumn=$sheet->getHighestColumn();//取得总列数

for($i=1;$i

$data[]=$objPHPExcel->getActiveSheet()->getCell('A'.$i)->getValue();

}

return$data;

}

有问题一定要及时弄清楚

PHP实现把mysql数据库中的表的数据导出到excel

我就贴当时生成EXCEL的代码,LZ可以参照,修改,然问这个PHP文件,就会自动生成EXCEL,

header('Content-type: text/html; charset=utf-8');

header("Content-type:application/vnd.ms-excel;charset=UTF-8");

header("Content-Disposition:filename=test.xls"); //输出格名称

echo "ID\t";echo "name\t\n";

//这是表格头字段 加\T就是换格,加\T\N就是结束这一行,换行的意思

$conn = mysql_connect("localhost","用户名","密码") or die("不能连接数据库");

mysql_select_db("数据库名", $conn);

mysql_query("set names 'UTF-8'");

$sql="SQL语句";

$result=mysql_query($sql);

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

echo $row[0]."\t";echo $row[1]."\t\n";

}

?>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。