代码仅供参考,主要是思路
直接上代码吧
function exportToExcel($data)
{
$default = array('is_append_time' => true,//默认加时间戳
'exit' => true,);
$data = array_merge($default, $data);
$str = "";
foreach ($data['title'] as $key => $value) {
$str .= $value . "\t";
}
$str .= "\r\n";
if (!empty($data['content'])) {
header("content-Type:text/html; charset=gbk");
header("Content-Type:application/vnd.ms-excel");
$filename = $data['filename'];
$filename .= $data['is_append_time'] === true ? "_" . date("Y-m-d H:i:s") : "";
$filename = iconv('utf-8', 'gbk//IGNORE', $filename);
header("Content-Disposition:filename={$filename}.xls");
foreach ($data['content'] as $key => $value) {
foreach ($value as $k => $item) {
if (is_array($item)) {
if ($item['val']) {
$str .= $item['val'] . "\t";
} elseif (isset($item['default'])) {
$str .= $item['default'] . "\t";
} else {
$str .= "\t";
}
} else {
$str .= $item . "\t";
}
}
$str .= "\r\n";
echo iconv('utf-8', 'gbk//IGNORE', $str);
$str = "";
}
exit;
} else {
header("Content-type: text/html; charset=utf-8");
exit("无数据可导出!");
}
if ($data['exit'] === true) {
exit;
}
return true;
}
前台
<input type="hidden" id="is_export" name="is_export" value=""/>
<input type="hidden" id="all_export" name="all_export" value=""/>
<span id="sub" class="block_button" onclick="searchcomm()">查询</span>
<span class="block_button" onclick="is_export()">导出</span>
<span class="block_button" onclick="all_export()">全部导出</span>
js
function searchcomm(){
$("#is_export").val('2');
$("#serach").attr('action','url');
$("#serach").submit();
}
function is_export(){
$("#is_export").val('1');
$("#serach").attr('action','url');
$("#serach").submit();
}
function all_export(){
$("#is_export").val('3');
$("#serach").attr('action','url');
$("#serach").submit();
}
只是导出功能的重要环节
具体实现出现的问题 可以留言 看到会回复