《PHP實戰(zhàn):Dwz與thinkphp整合下的數(shù)據(jù)導(dǎo)出到Excel實例》要點:
本文介紹了PHP實戰(zhàn):Dwz與thinkphp整合下的數(shù)據(jù)導(dǎo)出到Excel實例,希望對您有用。如果有疑問,可以聯(lián)系我們。
本文實例講述了Dwz與thinkphp整合下的數(shù)據(jù)導(dǎo)出到Excel的辦法.分享給大家供大家參考.具體辦法如下:PHP學(xué)習(xí)
這個問題困擾了我很久,終于還是自己寫JQUERY把它搞掂了,希望能對遇到同樣問題的人有所幫助,好吧,下面就是源代碼:PHP學(xué)習(xí)
jquery代碼如下:
PHP學(xué)習(xí)
代碼如下:
$(function(){?
?
??????? //_getIds辦法就是獲取已選的要導(dǎo)出的數(shù)據(jù)的ID,設(shè)了兩個參數(shù)selectedIds--已選id的input名稱,targetType-->碎片模式,默認(rèn)是navTab,如果是dialog的自行修改?
function _getIds(selectedIds,targetType){?
??????? var ids="";?
??????? var $box=targetType=="dialog"?$.pdialog.getCurrent():navTab.getCurrentPanel();?
??????? $box.find("input:checked").filter("[name='"+selectedIds+"']").each(function(i){?
?
??????????? var val=$(this).val();?
??????????? ids+=i==0?val:","+val;});?
??????????? return ids;?
??????? }?
??????? //導(dǎo)出excel的按鈕 class=iconn,click時觸發(fā)?
$(".iconn").click(?
function(){?
//因為這個辦法直運用到導(dǎo)出到excel 所以這里所需的參數(shù)變量我直接寫死了?
var targetType="navTab";?
var selectedIds="ids";?
var postType="string";//批量選擇的話,以文本的形式獲取?
var ids=_getIds(selectedIds,targetType);?
if(!ids){?
alertMsg.error($(".iconn").attr("warn"));?
return false;?
//alert("請選擇要導(dǎo)出的數(shù)據(jù)!");?
}else{?
//將獲取到的ids 傳給后臺處理?
window.open("__URL__/memberExport/ids/"+ids);?
}?
?
});?
});
PHP代碼如下:
代碼如下:
//member成員信息導(dǎo)出到excel?
public function memberExport(){?
??? $id=$_REQUEST['ids'];//獲取已選數(shù)據(jù)的ID?
??? //echo $id;?
?
//在這里導(dǎo)出到excel我沒有用到phpexcel,是自己寫的,很簡單,相信大家都明白是什么意思,根據(jù)自己需要自行修改就行了?
??? $filename=date('Y-m-d');?
??? 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;charset=gb2312");?
header("Content-Type:application/octet-stream");?
header("Content-Type:application/download");?
header('Content-Disposition:attachment;filename="'.$filename.'.xls"');?
header("Content-Transfer-Encoding:binary");?
if(!$id){?
$this->error('非法操作!');?
}else{?
?
$map['id']=array('in',$id);?
$title="用戶名\t 姓名\t 部門\t 職務(wù)\t 身份證\t 職稱\t 學(xué)歷\t 畢業(yè)時間\t 錄用時間";?
$title=iconv('utf-8','gbk',$title);?
echo $title;?
set_time_limit(0);?
?? $offset= 0;?
?? $length=100;?
$Member = M('Member');?
$list=$Member->where($map)->order('id desc')->select();?
if(!$list){?
$this->error('操作錯誤!');?
}else{?
foreach($list as $key=>$row){?
echo "\n";?
echo iconv('utf-8','gbk',$row['username'])."\t";?
echo iconv('utf-8','gbk',$row['name'])."\t";?
echo iconv('utf-8','gbk',$row['department'])."\t";?
echo iconv('utf-8','gbk',$row['zhiwu'])."\t";?
echo iconv('utf-8','gbk',$row['sfz'])."\t";?
echo iconv('utf-8','gbk',$row['zhicheng'])."\t";?
echo iconv('utf-8','gbk',$row['xueli'])."\t";?
echo iconv('utf-8','gbk',$row['bytime'])."\t";?
echo iconv('utf-8','gbk',$row['lytime'])."\t";?
?
}?
$offset+=$length;?
}?
}?
}
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助.PHP學(xué)習(xí)
維易PHP培訓(xùn)學(xué)院每天發(fā)布《PHP實戰(zhàn):Dwz與thinkphp整合下的數(shù)據(jù)導(dǎo)出到Excel實例》等實戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/13483.html