利用phpexcel把excel导入数据库和数据库导出excel实现
本文介绍利用phpexcel对数据库数据导入excel(excel筛选)、导出excel,大家参考使用吧
复制代码 代码如下:
/*
*author zhy
*date 2012 06 12
*for excel
*/
date_default_timezone_set("PRC");
error_reporting(E_ALL);
error_reporting(0);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '
');
require_once ('../Classes/PHPExcel.php');
require_once("config.php");
require_once("mysql.class.php");
//根据时间生成采购报表
$time = date("a");
$minute = date("i");
$apm = "";
if($time=='pm'){
$apm = $time;
$stime = mktime(12,00,00,date('m'),date('d')-1,date('Y'));
$etime = mktime(11,59,59,date('m'),date('d'),date('Y'));
}else{
$apm = $time;
$stime = mktime(12,00,00,date('m'),date('d')-1,date('Y'));
$etime = mktime(11,59,59,date('m'),date('d'),date('Y'));
}
//实例化excel类
$objPHPExcel = new PHPExcel();
////////获取文档信息
////////$objProps = $objPHPExcel->getProperties();
///////print_r($objProps);
///////echo "
";
///////$objProps->setDescription("test_123456");
///////print_r($objProps);
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A5','商品编码')
->setCellValue('B5','货号')
->setCellValue('C5','商品名称')
->setCellValue('D5','采购量');
//设置选定sheet表名
$objPHPExcel->getActiveSheet()->setTitle('祖名');
//设置字体样式
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setName('Arial')->setSize(25);//////->setUnderline(true);/////->getColor()->setARGB('FFFF0000');///->setBold(true);
//合并单元格 给单元格赋值(数值,字符串,,公式)
$objPHPExcel->getActiveSheet()->mergeCells('A1:D3')->setCellValue('A1', 'zhongyi清单');
///////$objPHPExcel->getActiveSheet()->mergeCells('A4:D4')->setCellValue('A4', "=SUM(E4:F4)");
$date_now = date("Y-m-d");
$objPHPExcel->getActiveSheet()->mergeCells('A4:D4')->setCellValue('A4', "采购日期:".$date_now." ".$apm." ");
//设置单列宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);//$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setRowHeight(50);/
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(44);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(15);
//大边框样式 边框加粗
$lineBORDER = array(
'borders' => array(
'outline' => array(
'style' => PHPExcel_Style_Border::BORDER_THICK,
'color' => array('argb' => '000000'),
),
),
);
//表头样式
$head = array(
'font' => array(
'bold' => true
),
'alignment' => array(
'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER
),
);
//标题样式
$title = array(
'font' => array(
'bold' => true
),
);
//居中对齐
$CENTER = array(
'alignment' => array(
'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER
),
);
//靠右对齐
$RIGHT = array(
'alignment' => array(
'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_RIGHT,
'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER
),
);
//细边框样式
$linestyle = array(
'borders' => array(
'outline' => array(
'style' => PHPExcel_Style_Border::BORDER_THIN,
'color' => array('argb' => 'FF000000'),
),
),
);
$objPHPExcel->getActiveSheet()->getStyle('A1:D3')->applyFromArray($head);///->getAlignment()->getHorizontal('');///->getBorders()->getTop()->setBorderStyle('');
//->setWrapText(true);自动换行
$objPHPExcel->getActiveSheet()->getStyle('A4:D4')->applyFromArray($RIGHT);
$objPHPExcel->getActiveSheet()->getStyle('A5:D5')->applyFromArray($title);
//填充色
/////$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->setARGB('FFFF0000');/
//插入数据
$dsql->Execute('omebrand_list',"select i.goods_id , sum( `nums` ) AS num, i.name,i.addon,i.price,g.bn as b,i.bn as h,
g.goods_id,i.goods_id,i.order_id
FROM `sdb_b2c_order_items` as i,sdb_b2c_goods as g
WHERE i.order_id in (select order_id from sdb_b2c_orders where status ='active' and createtime between $stime and $etime) and i.goods_id=g.goods_id and g.cat_id=173 GROUP BY h");
$m = 0;
unset($re);
while($row=$dsql->GetObject('omebrand_list'))
{ $re[$m] = get_object_vars($row);
$m++;
}
$row_count = 5;
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A6', 12325416541)
->setCellValue('B6', 4962132165262)
->setCellValue('C6', 121515212515241521)
->setCellValue('D6', 96215465415);
foreach($re as $r => $dataRow) {
$baseRow = 6;
$row = $baseRow + $r;
$bn=$dataRow[h];
$goods_id = $dataRow[goods_id];
$spec_value = "";
$aa = unserialize($dataRow[addon]);
if ($aa['product_attr']){
foreach ($aa['product_attr'] as $arr_special_info) {
$spec_value = $arr_special_info['value'];
}
}
preg_match_all('/\-?\d+\.?\d*/i',$spec_value,$row1);
$num = $row1[0][0];
$all = $num*$dataRow[num];
if($spec_value==''){
$all=$dataRow['num'];
//$prce=$dataRow[price];
}
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A'.$row, $dataRow['b'])
->setCellValue('B'.$row, $bn)
->setCellValue('C'.$row, $dataRow['name'])
->setCellValue('D'.$row, $all);
$objPHPExcel->getActiveSheet()->getStyle('A'.$row_count)->applyFromArray($linestyle);
$objPHPExcel->getActiveSheet()->getStyle('B'.$row_count)->applyFromArray($linestyle);
$objPHPExcel->getActiveSheet()->getStyle('C'.$row_count)->applyFromArray($linestyle);
$objPHPExcel->getActiveSheet()->getStyle('D'.$row_count)->applyFromArray($linestyle);
$baseRow++;
$row_count++;
}
$objPHPExcel->getActiveSheet()->getStyle('A'.$row_count)->applyFromArray($linestyle);
$objPHPExcel->getActiveSheet()->getStyle('B'.$row_count)->applyFromArray($linestyle);
$objPHPExcel->getActiveSheet()->getStyle('C'.$row_count)->applyFromArray($linestyle);
$objPHPExcel->getActiveSheet()->getStyle('D'.$row_count)->applyFromArray($linestyle);
$objPHPExcel->getActiveSheet()->getStyle('A5:D'.$row_count)->applyFromArray($CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A1:D'.$row_count)->applyFromArray($lineBORDER);
//设置打印页边距
$objPHPExcel->getActiveSheet()->getPageMargins()->setTop(0);
$objPHPExcel->getActiveSheet()->getPageMargins()->setRight(0);
$objPHPExcel->getActiveSheet()->getPageMargins()->setLeft(0);
$objPHPExcel->getActiveSheet()->getPageMargins()->setBottom(0);
//设置纸张类型
$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
//设置自动筛选
$objPHPExcel->getActiveSheet()->setAutoFilter('A5:D'.$row_count);
//设置自动换行
$objPHPExcel->getActiveSheet()->getStyle('B6:B'.$row_count)->getAlignment()->setWrapText(true);
//设置格式化数字
$objPHPExcel->getActiveSheet()->getStyle('A6:A'.$row_count)->getNumberFormat()->setFormatCode('0000000000');
//设置安全级别
$md=md5(time());
$md=substr($md,0,8);
$objPHPExcel->getActiveSheet()->getProtection()->setPassword("$md");
$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true);//
$objPHPExcel->getActiveSheet()->getProtection()->setSort(true);
$objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true);
$objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true);
//添加图片
/*
$obj=$objPHPExcel->getActiveSheet();
$objDrawing = new PHPExcel_Worksheet_Drawing();
$objDrawing->setName('wsyImg');
$objDrawing->setDescription('Image inserted by zhy');
$objDrawing->setPath('./wsy.jpg');
$objDrawing->setHeight(50);
$objDrawing->setCoordinates('H23');
$objDrawing->setOffsetX(60);
$objDrawing->setRotation(-10); /
$objDrawing->getShadow()->setVisible(true);
$objDrawing->getShadow()->setDirection(-20); /
$objDrawing->setWorksheet($obj);
*/
//页眉页脚
//$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('zhy');
//$objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('end');
$objPHPExcel->setActiveSheetIndex(0);
$tname=date('Y-m-dH',time());
$tnam=iconv('UTF-8','GBK','祖名订单');
$tname=$tnam.$tname;
// Excel 2007保存
//$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
//$objWriter->save(str_replace('.php', '.xlsx', __FILE__));
// Excel 5保存
//$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
//$objWriter->save(str_replace('.php', '.xls', __FILE__));
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save(str_replace('.php', '.xls', __FILE__));
//$url = "/data/home/htdocs/ec/public/files/".date("Y")."/".date("Ym")."/";
createDir($url);
function createDir($dir) {
if (!is_dir ($dir )) {
mkdir($dir, 0777, true);
chmod($dir, 0777);
chown( $dir, 'daemon' );
chgrp( $dir, 'daemon' );
}
}
$name='forexmple_excel';
rename(str_replace('.php', '.xls', __FILE__), $name.'.xls');
?>

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Panduan Lengkap: Cara Memproses Fail Excel Menggunakan Sambungan PHP PHPExcel Pengenalan: Fail Excel sering digunakan sebagai format biasa untuk penyimpanan dan pertukaran data apabila memproses sejumlah besar data dan analisis statistik. Menggunakan sambungan PHP PHPExcel, kami boleh membaca, menulis dan mengubah suai fail Excel dengan mudah untuk memproses data Excel dengan berkesan. Artikel ini akan memperkenalkan cara menggunakan sambungan PHP PHPExcel untuk memproses fail Excel dan menyediakan contoh kod. 1. Pasang PHPExc

Dengan kemunculan era digital, data telah menjadi bahagian terpenting dalam kehidupan dan kerja harian kita, dan fail Excel telah menjadi salah satu alat penting untuk pemprosesan data. Saya percaya bahawa ramai pembangun PHP akan sering menghadapi penggunaan fail Excel untuk pemprosesan data dan operasi di tempat kerja. Artikel ini akan memperkenalkan anda kepada kaedah dan langkah berjaga-jaga untuk menggunakan perpustakaan PHPExcel untuk memproses fail Excel. Apakah PHPExcel? PHPExcel ialah kelas PHP

PHPEXCEL ialah perpustakaan kelas PHP yang sangat baik untuk membaca dan menulis fail Excel. Ia menyediakan API yang sangat mencukupi yang membolehkan kami menggunakan PHP untuk membaca dan menulis fail Excel. Kadangkala, kita perlu menukar fail Excel kepada fail CSV untuk digunakan pada beberapa keadaan. Jadi, artikel ini menerangkan terutamanya cara menggunakan perpustakaan kelas PHPEXCEL untuk menukar fail Excel kepada fail CSV dan membukanya.

PHPExcel ialah perpustakaan PHP sumber terbuka untuk memproses fail Microsoft Excel Ia boleh membaca, mencipta, mengubah suai dan menyimpan fail Excel. Ia adalah alat yang berkuasa dan sangat boleh disesuaikan yang boleh digunakan untuk mengendalikan tugas seperti analisis data, penjanaan laporan, import dan eksport data, dsb. Dalam artikel ini, kami akan memperkenalkan mengapa PHPExcel telah menjadi tumpuan pembangun PHP.

PHPExcel ialah perpustakaan PHP sumber terbuka untuk memproses fail Microsoft Excel (.xls dan .xlsx). Ia boleh membaca, menulis dan mengendalikan fail Excel, dan menyediakan pelbagai fungsi dan kaedah. Menggunakan perpustakaan PHPExcel dalam projek PHP, anda boleh memproses fail Excel dengan cepat dan mudah dan melaksanakan fungsi seperti import data, eksport dan pemprosesan data. Artikel ini akan memperkenalkan cara menggunakan PHPExcel untuk memproses fail Excel. 1. Untuk memasang PHPExcel, gunakan

Dalam era pemindahan maklumat yang pesat hari ini, pemprosesan dan penyimpanan data telah menjadi semakin penting. Penggunaan jadual Excel adalah pilihan pertama bagi ramai orang kerana jadual Excel boleh mengintegrasikan pelbagai data dan boleh dianalisis dan diproses dengan mudah. Untuk melengkapkan penciptaan jadual Excel dengan lebih cekap, kami boleh menggunakan dua alat berkuasa, PHP dan PHPExcel. Dalam artikel ini, kami akan memperkenalkan cara membuat fail Excel menggunakan PHP dan PHPExcel. 1. Pasang PHPExcel dahulu

Petua pembangunan PHP: Cara menggunakan PHPExcel dan PHPExcel_IOFactory untuk mengendalikan pangkalan data MySQL Gambaran Keseluruhan: Dalam pembangunan web, memproses fail Excel adalah tugas biasa dan penting. PHPExcel ialah perpustakaan PHP yang berkuasa dan mudah digunakan yang boleh membantu kami membaca dan menulis fail Excel. Artikel ini akan memperkenalkan cara menggunakan perpustakaan PHPExcel dan PHPExcel_IOFactory untuk mengendalikan pangkalan data MySQL. Langkah 1

Kemahiran pembangunan PHP: Cara menggunakan PHPExcel untuk mengendalikan pangkalan data MySQL Dengan perkembangan pesat Internet, sejumlah besar data disimpan dalam pangkalan data, dan operasi seperti import, eksport dan pemprosesan diperlukan. Dalam pembangunan PHP, PHPExcel ialah perpustakaan berkuasa yang boleh memudahkan interaksi dengan fail Excel dan merealisasikan import dan eksport data. Artikel ini akan memperkenalkan cara menggunakan PHPExcel untuk mengendalikan pangkalan data MySQL dan melaksanakan fungsi import dan eksport data. Pemasangan dan konfigurasi PHPExcel
