thinkPHP怎样使用PHPExcel导出网站数据为excel

thinkPHP怎样使用PHPExcel导出网站数据为excel,第1张

1
一、下载PHPExcel包
2
二、新建文件夹,命名为PHPExcel,将上面两个文件PHPExcel,PHPExcelphp放到我们新建的PHPExcel文件夹下面;然后将此文件夹放在thinkPHP核心包里面,路径如下:D:\\你的项目\ThinkPHP\Library\Vendor
3
三、前端界面代码
<div style="margin-left: 100px;margin-top: -33px;">
<form action="{:U(output)}" enctype="multipart/form-data" method="post" >
<input type="file" name="photo" />
<input type="submit" value="导出数据" style="background-color: #337AB7;color: white;">
</form>
</div>
4
四、导出表格样式代码
//商家表格导出模板
public function exportExcel($expTitle, $expCellName, $expTableData) {
$xlsTitle = iconv('utf-8', 'gb2312', $expTitle); //文件名称
$fileName = '网站商家信息表' date('_YmdHis'); //or $xlsTitle 文件名称可根据自己情况设定
$cellNum = count($expCellName);
$dataNum = count($expTableData);
vendor("PHPExcelPHPExcel");
$objPHPExcel = new\PHPExcel();

$cellName = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',
'Y', 'Z', 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'AG', 'AH', 'AI', 'AJ',
'AK', 'AL', 'AM', 'AN', 'AO', 'AP', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AV',
'AW', 'AX', 'AY', 'AZ');
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(22);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(10);
$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(10);
$objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(10);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('I')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('J')->setWidth(10);
$objPHPExcel->getActiveSheet()->getColumnDimension('K')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('L')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('M')->setWidth(25);
$objPHPExcel->getActiveSheet()->getColumnDimension('L')->setWidth(22);
$objPHPExcel->getActiveSheet()->getColumnDimension('M')->setWidth(12);
$objPHPExcel->getActiveSheet()->getColumnDimension('N')->setWidth(15);
$objPHPExcel->getActiveSheet(0)->mergeCells('A1:' $cellName[$cellNum - 1] '1');
//合并单元格

$objPHPExcel->getActiveSheet()->setCellValue('A1',
'网站商家信息表')->getStyle()->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
for ($i = 0; $i < $cellNum; $i++) {
$objPHPExcel->setActiveSheetIndex(0)->setCellValue($cellName[$i]'2', $expCellName[$i][1]);
}
// Miscellaneous glyphs, UTF-8
for ($i = 0; $i < $dataNum; $i++) {
for ($j = 0; $j < $cellNum; $j++) {

$objPHPExcel->getActiveSheet(0)->setCellValue($cellName[$j]
($i + 3), " "$expTableData[$i][$expCellName[$j][0]]);
}
}
ob_end_clean(); //清除缓冲区,避免乱码
header('pragma:public');
header('Content-type:application/vndms-excel;charset=utf-8;name="'$xlsTitle 'xls"');
header("Content-Disposition:attachment;filename=$fileNamexls");
//attachment新窗口打印inline本窗口打印
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;
}
5
五、导出所需数据代码
function output($begin=0, $end=0) {//导出商家信息Excel
$xlsName = "User";
$xlsCell = array(
array('userid', '商家id'),
array('groupid', '商家等级'),
array('store_name', '店铺名称'),
array('contact_name', '联系人'),
array('phone', '手机'),
array('email', '邮箱'),
array('activity_count', '活动商品'),
array('frozen_deposit', '冻结中保证金'),
array('regdate', '注册时间'),
array('loginnum', '登录次数'),
array('lastdate', '最近登录'),
array('id_number', '身份z号码'),
array('name', '姓名'),
array('qq', 'QQ'), );
$beginToday = mktime(0, 0, 0, date('m'), date('d'), date('Y'));
$endToday = mktime(0, 0, 0, date('m'), date('d') + 1, date('Y')) - 1;
if ($begin > 0) { $beginToday = $begin;}
if ($end > 0) {$endToday = $end;}
$xlsModel = M('member');

$xlsData=$xlsModel->query("SELECT
muserid,mgroupid,cstore_name,ccontact_name,mphone,memail,cfrozen_deposit,FROM_UNIXTIME(mregdate)
AS regdate,loginnum,FROM_UNIXTIME(mlastdate) AS lastdate,mqq FROM
xw_member AS m ,xw_member_merchant AS c WHERE mmodelid = 2 AND muserid
= cuserid and (mlastdate between $beginToday and $endToday) ORDER BY
muserid DESC");
$dataNum = count($xlsData);
for ($i = 0; $i < $dataNum; $i++){
if ($xlsData[$i][groupid] == '1') {
$xlsData[$i][groupid] = '普通商家';
} else if ($xlsData[$i][groupid] == '2') {
$xlsData[$i][groupid] = '金牌商家';
} else if ($xlsData[$i][groupid] == '3') {
$xlsData[$i][groupid] = '白金商家';
} else if ($xlsData[$i][groupid] == '4') {
$xlsData[$i][groupid] = '钻石商家';
}

$rs=M('member_attesta')->where("userid= '"$xlsData[$i]['userid']"'
AND type = 'identity'")->getField('infos');
$identity = string2array($rs);
$xlsData[$i]['id_number'] = $identity['id_number'];
$xlsData[$i]['name'] = $identity['name'];

$xlsData[$i]['activity_count']=
M('product')->where(array('company_id'=>$xlsData[$i]['userid']))->count();
}
$this->exportExcel($xlsName, $xlsCell, $xlsData);
}
}
6
六、导出数据表格如下

瞬时模拟的时均结果经常被用来与瞬时结果一起来显示流体的状态。在瞬时模拟时,由于结果文件过大,快速得到时均的结果是很重要的一点。
答主通过网上查阅资料后,发现主要有如下几种方式:
Fluent 自带的时间平均方式;
通过Fluent 中的UDF,自定义输出文件;
通过Fluent的journal或script,将原本的二进制输出文件转化成文本编辑器可读取的cdat文件格式,再用程序批量读取文件做后处理,最后导入后处理后的文件;
通过tecplot;
答主在查阅了这几种方式之后,使用了一个新的方式,具体内容写在最后
Fluent自带方式(data sampling)
这种方式是最简单的。只需要在calculation的界面勾选,输入想要的interval就可以得到时间平均后的结果。但是其中有两个问题:1 这种方式无法选择平均时间的范围,也就是说在计算一开始的没有收敛的值都被计算在内;2 FLuent中没有定义的variable无法做时间平均。
fluent瞬态计算怎么求取时间平均后的结果 - 计算模拟 - 小木虫 - 学术 科研 互动社区
2 UDF 定义输出文件
这种方式相较于第一种有更强的自主性,你可以通过编码定义不同的变量,最后输出。这两种都是需要在计算开始之前就完成相对应的 *** 作。具体可以参考下面链接中第一个回答的附件。
>需要将数据按一定的规则排列才能导入。
由于从post直接读进来的离散点没有规则,teplot无法识别,所以要将数据按一定的规则排列后,才可以被teplot正确识别。步骤如下:
将四列数据进行排序,使得列数据变化最快,y列变化次快,Z列变化最缓慢。
将上述按排完序的数据拷到txt中,粘贴作为表头VARIABLESgrayZONEI=31,J=31,K=20,DATAPACKING=POINT注:由于生成的dat文件中需要知道三个方向的维数(节点数)I,J,K。
将将txt重命名为dat文件loaddatafiles-teplotdataloader-d出的框中选择三维图-读入数据后按contour显示彩色图。
下面为所参考的资料,由于没有下载到原文,只能贴出截图了。

1、首先确认MySQL是否开启binlog使用showvariableslike'%log_bin%'。
2、其次进入数据库服务器,找到MySQL数据的data数据所在位置。
3、最后binlog日志就在此文件夹下。

ps文件导成pdf文件:

工具:

电脑

Photoshop CS6

1、电脑桌面打开Photoshop CS6软件。

2、单击ps文件菜单,然后点击自动,再点击PDF演示文稿。

3、在打开的PDF演示文稿对话框中单击浏览。

4、在浏览的文件夹中找到需要转PDF的,双击打开。

5、然后在PDF演示文稿页面,单击存储,找到保存的位置如桌面,单击存储PDF。

6、桌面上显示刚存储的转成PDF文件。

7、点击存储即可。

在ANSYS Workbench下启动,在项目树的部件系统中,拖动CFD-Post或者,创建一个单独的CFD- -Post session
从开始菜单或命令行启动Start > Programs > ANSYS 12 0 > ANSYS CFD-Post,也可以在CFX-Solver Manager或CFX Launcher中启动


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13391398.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-27
下一篇 2023-07-27

发表评论

登录后才能评论

评论列表(0条)

保存