tp5封裝 phpexecl引入和調(diào)用類的封裝以及調(diào)用

composer安裝phpexecl
composer require phpoffice/phpexcel

<?php
namespace Potting;
use PHPExcel;
use PHPExcel_IOFactory;
class Excel
{
static public function export($headArr,$data){
$path='execl/';
$fileName=time();
if(!file_exists($path)){
mkdir($path,0777,true);
}
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties();
$key = ord("A"); // 設(shè)置表頭
foreach ($headArr as $v) {
$colum = chr($key);
$objPHPExcel->setActiveSheetIndex(0)->setCellValue($colum . '1', $v);
$objPHPExcel->setActiveSheetIndex(0)->setCellValue($colum . '1', $v);
$key += 1;
}
$column = '2';
$objActSheet = $objPHPExcel->getActiveSheet();
foreach ($data as $key => $rows) { // 行寫入
$span = ord("A");
foreach ($rows as $keyName => $value) { // 列寫入
$objActSheet->setCellValue(chr($span) . $column, $value);
$span++;
}
$column++;
}
$fileName = $fileName.".xls";
$objActSheet = PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007');
//保存xls
$objActSheet->save($path.$fileName);
//返回路徑
return $path.$fileName;
}
}

<?php
namespace Potting;
use PHPExcel;
use PHPExcel_IOFactory;
class Excel
{
static public function export($fileName,$headArr,$data){
// $path='execl/';
// $fileName=time();
// if(!file_exists($path)){
// mkdir($path,0777,true);
// }
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties();
$key = ord("A"); // 設(shè)置表頭
foreach ($headArr as $v) {
$colum = chr($key);
$objPHPExcel->setActiveSheetIndex(0)->setCellValue($colum . '1', $v);
$objPHPExcel->setActiveSheetIndex(0)->setCellValue($colum . '1', $v);
$key += 1;
}
$column = '2';
$objActSheet = $objPHPExcel->getActiveSheet();
foreach ($data as $key => $rows) { // 行寫入
$span = ord("A");
foreach ($rows as $keyName => $value) { // 列寫入
$objActSheet->setCellValue(chr($span) . $column, $value);
$span++;
}
$column++;
}
$fileName = $fileName.".xls";
$fileName = iconv("utf-8", "gb2312", $fileName); // 重命名表
$objPHPExcel->setActiveSheetIndex(0); // 設(shè)置活動(dòng)單指數(shù)到第一個(gè)表,所以Excel打開(kāi)這是第一個(gè)表
header('Content-Type: application/vnd.ms-excel');
header("Content-Disposition: attachment;filename='$fileName'");
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output'); // 文件通過(guò)瀏覽器下載
exit();
//$fileName = $fileName.".xls";
//$objActSheet = PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007');
//保存xls
//$objActSheet->save($path.$fileName);
//返回路徑
//return $path.$fileName;
}
}

public function index()
{
$fileName='測(cè)試';
$header=['表頭A','表頭B','表頭C'];
$data=[
['嘿嘿','heihei','2321312'],
['嘿嘿','heihei','2321312'],
['哈哈','haha','2321312']
];
$url=Excel::export($fileName,$header,$data);
var_dump($url);die();
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容