数据 프로젝트에서 엑셀 인스턴스를 내보내려고 데이터를 작성했는데, 최근에는 이런 프로젝트를 접하지 못해서, 조금이나마 영감을 드리고자 합니다. 도움이 필요한 친구를 위해! : 백엔드 컨트롤러 방식: 控
/*导入phpExcel核心类 */ require_once APP_PATH.'PHPExcel/PHPExcel.php'; require_once APP_PATH.'PHPExcel/PHPExcel/Writer/Excel5.php'; // 用于其他低版本xls require_once APP_PATH.'PHPExcel/PHPExcel/Writer/Excel2007.php'; // 用于 excel-2007 格式 //实例化PHPExcel类 $objPHPExcel = new PHPExcel(); $objPHPExcel->createSheet(0); $objPHPExcel->setActiveSheetIndex(0); $currentSheet = $objPHPExcel->getActiveSheet(); // $objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(300);#设置单元格行高(此方法经过个人测试,发现会出现excel变形) // 设置内容居中 $objPHPExcel->setActiveSheetIndex(0)->getStyle('A')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('B')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('C')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('D')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('E')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('F')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('G')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('H')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('I')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('J')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('K')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('L')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('M')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('N')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('O')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $objPHPExcel->setActiveSheetIndex(0)->getStyle('P')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); // 设置excel宽度 $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('I')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('J')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('K')->setWidth(20); $objPHPExcel->getActiveSheet()->getColumnDimension('L')->setWidth(20); // 设置头部单元格注释信息 $currentSheet->setCellValue('A1', "数据1"); $currentSheet->setCellValue('B1', "数据2"); $currentSheet->setCellValue('C1', "数据3"); $currentSheet->setCellValue('D1', "数据4"); $currentSheet->setCellValue('E1', "数据5"); $currentSheet->setCellValue('F1', "数据6"); $currentSheet->setCellValue('G1', "数据7"); $currentSheet->setCellValue('H1', "数据8"); $currentSheet->setCellValue('I1', "数据9"); $currentSheet->setCellValue('J1', "数据10"); $currentSheet->setCellValue('K1', "数据11"); $currentSheet->setCellValue('L1', "数据12"); $currentSheet->setCellValue('M1', "照片数据1"); $currentSheet->setCellValue('N1', "照片数据2"); $currentSheet->setCellValue('O1', "照片数据3"); $currentSheet->setCellValue('P1', "照片数据4"); $idx = 2; //查询出数据库内的数据信息 //查询出所需信息 $searchInfo = M('数据表')->select(); //组装查询条件 $year_time_result = 自定义设置的查询条件; $i = 0; foreach ($searchInfo as &$y){ $i++; //设置数据所在单元格 $currentSheet->setCellValue('A' . $idx, 数据1); $currentSheet->setCellValue('B' . $idx, 数据2); $currentSheet->setCellValue('C' . $idx, 数据3); $currentSheet->setCellValue('D' . $idx, 数据4); $currentSheet->setCellValue('E' . $idx, 数据5); $currentSheet->setCellValue('F' . $idx, 数据6); $currentSheet->setCellValue('G' . $idx, 数据7); $currentSheet->setCellValue('H' . $idx, 数据8); $currentSheet->setCellValue('I' . $idx, 数据9); $currentSheet->setCellValue('J' . $idx, 数据10); $currentSheet->setCellValue('K' . $idx, 数据11); $currentSheet->setCellValue('L' . $idx, 数据12); //设置单元格高度,这个是重点哦 $currentSheet->getRowDimension($idx) -> setRowHeight(100); //图片处理类,这个才是图片导出的关键哦 $objDrawing = new PHPExcel_Worksheet_Drawing(); //开始设置图片 //照片数据1 if(!empty(照片数据1)){ $objDrawing->setPath(照片数据1); // 设置图片宽度高度 $objDrawing->setHeight(100);//照片高度 $objDrawing->setWidth(100); //照片宽度 /*设置图片要插入的单元格*/ $objDrawing->setCoordinates('M'.$idx); // 图片偏移距离 $objDrawing->setOffsetX(0); $objDrawing->setOffsetY(0); $objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); } //图片处理类,这个才是图片导出的关键哦 $objDrawing1 = new PHPExcel_Worksheet_Drawing(); //照片数据2 if(!empty(照片数据2)){ $objDrawing1->setPath(照片数据2); // 设置图片宽度高度 $objDrawing1->setHeight(100);//照片高度 $objDrawing1->setWidth(100); //照片宽度 /*设置图片要插入的单元格*/ $objDrawing1->setCoordinates('N'.$idx); // 图片偏移距离 $objDrawing1->setOffsetX(0); $objDrawing1->setOffsetY(0); $objDrawing1->setWorksheet($objPHPExcel->getActiveSheet()); } //图片处理类,这个才是图片导出的关键哦 $objDrawing2 = new PHPExcel_Worksheet_Drawing(); //照片数据3 if(!empty(照片数据3)){ $objDrawing2->setPath(照片数据3); // 设置图片宽度高度 $objDrawing2->setHeight(100);//照片高度 $objDrawing2->setWidth(100); //照片宽度 /*设置图片要插入的单元格*/ $objDrawing2->setCoordinates('O'.$idx); // 图片偏移距离 $objDrawing2->setOffsetX(0); $objDrawing2->setOffsetY(0); $objDrawing2->setWorksheet($objPHPExcel->getActiveSheet()); } //图片处理类,这个才是图片导出的关键哦 $objDrawing3 = new PHPExcel_Worksheet_Drawing(); //照片数据4 if(!empty(照片数据4)){ $objDrawing3->setPath(照片数据4); // 设置图片宽度高度 $objDrawing3->setHeight(100);//照片高度 $objDrawing3->setWidth(100); //照片宽度 /*设置图片要插入的单元格*/ $objDrawing3->setCoordinates('P'.$idx); // 图片偏移距离 $objDrawing3->setOffsetX(0); $objDrawing3->setOffsetY(0); $objDrawing3->setWorksheet($objPHPExcel->getActiveSheet()); } $idx++; } $write = new PHPExcel_Writer_Excel5($objPHPExcel); 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"); header("Content-Type:application/octet-stream"); header("Content-Type:application/download");; header('Content-Disposition:attachment;filename="导出excel的文件名(可自定义)"'); header("Content-Transfer-Encoding:binary"); $write->save('php://output');
코드가 공유됩니다. 이번에 정리해야 할 것은 내 프로젝트의 성공 코드라는 것입니다. Phpexcel의 핵심 카테고리입니다. 이 클래스 라이브러리 파일이 핵심입니다. 무료 다운로드 주소:
ThinkPHP는 데이터를 Excel 파일로 내보내기 위한 PHPExcel 클래스 라이브러리 파일을 구현합니다. 그렇지 않으면 변수 충돌과 이미지 덮어쓰기 문제가 발생합니다. 마지막 문제는 데이터베이스 데이터를 읽을 때 데이터베이스에 이미지 데이터가 없는 경우 데이터가 비어 있는지 판단해야 한다는 것입니다. 그렇지 않으면 프로그램 오류가 발생합니다. 예외가 발생합니다. 이러한 사항에 주의를 기울이면 우리 기능이 실행되고 프로그램이 매우 잘 표시됩니다.
위 내용은 ThinkPHP의 PHPExcel은 여러 이미지 데이터를 내보냅니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

뜨거운 주제



