>  기사  >  백엔드 개발  >  PHP를 사용하여 스타일이 지정된 Excel 파일을 내보내기 위한 샘플 코드

PHP를 사용하여 스타일이 지정된 Excel 파일을 내보내기 위한 샘플 코드

WBOY
WBOY원래의
2016-07-25 08:55:27972검색
  1. /**
  2. * 스타일을 사용하여 Excel 내보내기
  3. * 편집: bbs.it-home.org
  4. */
  5. include 'Writer.php'; * 내보내기를 위해 준비된 데이터*** */
  6. $head = '1주일 일정'
  7. $data = array('월요일' => array( array('time' => '09:00) ', 'event' => '회사 정기회의'),
  8. array('time' => '14:00', 'event' => '부서 정기회의')
  9. ),
  10. '화요일' => array( array('time' => '09:30', 'event' => '스틴슨 씨와 함께 아침 식사')),
  11. '수요일' => ( array('time' => '12:10', 'event' => '시장 중간 보고서'),
  12. array('time' => '15:30', 'event' => ; '마케팅 부서 전략 배포 회의') ),
  13. '목요일' => array( array('time' => '', 'event' => '')),
  14. '금요일' => array( array('time' => '16:00', 'event' => 'WoC 주식 세미나'),
  15. array('time' => '17:00', ' event' => '월스트리트로 날아가다'),
  16. array('time' => '21:00', 'event' => '클린턴을 만나다'))
  17. ); /* *** *** */
  18. $workbook = new Spreadsheet_Excel_Writer()
  19. $filename = date('YmdHis').'.xls';//csv
  20. $workbook ->send($filename); //다운로드할 Excel 파일 이름 보내기
  21. $workbook->setVersion( 8 )
  22. $sheet = &$workbook->addWorksheet("Sheet1" ); // 워크시트 생성
  23. $sheet->setInputEncoding('utf-8'); // 문자 집합
  24. $headFormat = &$workbook->addFormat(array('Size' => 14 , 'Align' => '가운데', 'Color' => '갈색', 'Bold'='1', 'Border' => ));//형식 정의
  25. $dayFormat = &$workbook->addFormat(array('Size' => 12, 'Align' => 'center', 'VAlign' => 'vcenter ' , 'FgColor' => '녹색', '색상' => '1'));//형식 정의
  26. $workbook-> (array('Size' => 10, 'Align' => '왼쪽', 'Border' => '1', 'Color' => '검은색', 'FgColor'=> '청록색' )); // 형식 정의
  27. $sheet->setColumn(0, 0, 20) // 너비 설정
  28. $sheet->setColumn(1, 1, 15); 너비 설정
  29. $sheet->setColumn(2, 2, 30); // 너비 설정
  30. $r = 0
  31. $sheet->write(0, $r, $ head, $headFormat); // 테이블 제목
  32. $sheet->mergeCells(0, 0, 0, 2); // 열 전체 표시
  33. $r; start
  34. foreach($data as $day => $events){
  35. $c = 0
  36. $sheet->write($r, $c, $day, $dayFormat)
  37. if (!$events){
  38. // 오늘의 계획 없음
  39. $r
  40. } else {
  41. $startRow = $r
  42. foreach ($events as $e; ) {
  43. $c = 1;
  44. $sheet->write($r, $c , $e['time'], $dataFormat) // 워크시트에 데이터 쓰기
  45. $sheet - >write($r, $c , $e['event'], $dataFormat); // 워크시트에 데이터 쓰기
  46. $r
  47. }
  48. // $day 셀 병합
  49. $sheet->mergeCells($startRow, 0, $r - 1, 0)
  50. }
  51. }
  52. $workbook->close() // 다운로드가 완료되었습니다
  53. ? >
  54. 코드 복사

코드 설명: $sheet = &$workbook->addWorksheet("Sheet1"); // 워크시트를 생성하고 워크시트에 대한 호출을 반환합니다. 하나의 Excel 통합 문서에 여러 개의 워크시트를 만들 수 있습니다. $headFormat = &$workbook->addFormat($param); // 사용 가능한 형식은 다음과 같습니다. http://pear.php.net/manual/en/package.fileformats를 참조하세요. .spreadsheet-excel -writer.spreadsheet-excel-writer-workbook.addformat.php 정렬

굵게

하단

상단

왼쪽

그렇습니다

테두리

테두리 색상

하단색상

탑컬러

오른쪽색상

왼쪽색

FgColor

배경색

색상

패턴

밑줄

텍스트 회전

사이즈

NumFormat

스크립트

$workbook->send($filename); //HTTP 헤더 보내기, 다운로드 준비, $filename은 다운로드된 파일 이름입니다. sheet->setColumn($startCol, $endCol, $width) // 열 너비 설정 $sheet->write($row, $col, $data, $format); //워크시트에 데이터 쓰기, $row 쓸 행 번호(0부터 시작) $col 쓸 열 번호, 0부터 시작 $data 데이터 $format addFormat()을 사용하여 생성된 스타일 $sheet->mergeCells($startRow, $startCol, $endRow, $endCol) // 셀 병합 $workbook->close(); // 다운로드 완료

시간이 있으면 위 코드를 xxx.php로 저장하고 직접 테스트하여 어떻게 작동하는지 확인해 보세요.



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.