phpexcel 클래스 라이브러리 인스턴스 지원(excel2003 excel2007)
풀어 주다: 2016-07-25 08:56:09
-
-
ini_set("display_errors",1);//오류 메시지 표시 여부 - ini_set (' include_path', ini_get('include_path').';D:\PHP\PHPExcel 1.6.6\Tests\classes\');//이 페이지에 대한 포함 경로 설정
- include "classes/PHPExcel.php ";
- include "classes/PHPExcel/Writer/Excel5.php";
- //엑셀 만들기
- $objPHPExcel = new PHPExcel();
- $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
- $ objWriter->save("xxx.xls");
- ?>
- <
- //포함 경로 설정 PHPExcel 클래스 라이브러리
- set_include_path('.'. PATH_SEPARATOR .
- 'D:ZealPHP_LIBS' . PATH_SEPARATOR .
- get_include_path())
-
- /**
- * 사용 예, ////로 시작하는 행에 대해 다양한 선택적 방법이 있습니다.
- * 실제 필요에 따라 해당 행의 주석을 여십시오.
- * Excel5를 사용하는 경우 출력 내용은 GBK로 인코딩되어야 합니다.
- */
- require_once 'PHPExcel.php';
-
- // 주석 해제
- ////require_once 'PHPExcel/Writer/Excel5.php' // 다른 하위 버전의 경우
- //
- /// /require_once 'PHPExcel/Writer/Excel2007.php'; // excel-2007 형식의 경우
-
- // 처리 개체 인스턴스 생성
- $objExcel = new PHPExcel()
-
- // 파일 형식 쓰기 객체 인스턴스 생성, 주석 해제
- ////$objWriter = new PHPExcel_Writer_Excel5($objExcel); // 다른 버전 형식에 사용
- // 또는
- // //$objWriter = new PHPExcel_Writer_Excel2007($objExcel); // 2007 형식의 경우
- //$objWriter->setOffice2003Compatibility(true)
-
- //********** *** ************************
- //기본 문서 속성 설정
- $objProps = $objExcel->getProperties() ;
- $objProps->setCreator("Zeal Li");
- $objProps->setLastModifiedBy("Zeal Li")
- $objProps->setTitle("Office XLS 테스트 문서") ;
- $objProps->setSubject("Office XLS 테스트 문서, 데모")
- $objProps->setDescription("PHPExcel로 생성된 테스트 문서."); setKeywords(" 사무실 엑셀 PHPExcel")
- $objProps->setCategory("테스트")
-
- //****************** ****** ****************
- //다음 콘텐츠 작업을 위해 현재 시트 인덱스를 설정합니다.
- //일반적으로 여러 시트를 사용할 때만 표시 호출이 필요합니다.
- //기본적으로 PHPExcel은 SheetIndex=0
- $objExcel->setActiveSheetIndex(0);
-
-
- $objActSheet = $objExcel ->getActiveSheet를 사용하여 자동으로 첫 번째 시트를 생성합니다. ()
-
- //현재 활성 시트의 이름 설정
- $objActSheet->setTitle('Test Sheet')
-
- //***** ** **********************************
- //셀 내용 설정
- //
- / /PHPExcel은 들어오는 콘텐츠를 기반으로 셀 콘텐츠 유형을 자동으로 결정합니다
- $objActSheet->setCellValue('A1', 'String content') // String content
- $objActSheet->setCellValue(' A2 ', 26); // 값
- $objActSheet->setCellValue('A3', true); // 부울 값
- $objActSheet->setCellValue('A4', '=SUM(A2: A2) )'); // 공식
-
- //컨텐츠 유형을 명시적으로 지정
- $objActSheet->setCellValueExplicit('A5', '847475847857487584',
- PHPExcel_Cell_DataType::TYPE_STRING);
- //셀 병합
- $objActSheet->mergeCells('B1:C22')
-
- //셀 분리
- $objActSheet->unmergeCells('B1:C22') ;
-
- //****************************************
- //셀 스타일 설정
- //
-
- //너비 설정
- $objActSheet->getColumnDimension('B')->setAutoSize(true); >getColumnDimension('A')->setWidth(30);
-
- $objStyleA5 = $objActSheet->getStyle('A5')
-
- //셀 내용 번호 형식 설정 .
- //
- //PHPExcel_Writer_Excel5를 사용하여 콘텐츠를 생성하는 경우
- //여기서
- //PHPExcel_Style_NumberFormat 클래스의 const 변수에 의해 정의된 다양한 사용자 정의 형식 지정 방법에 유의해야 합니다. 다른 유형도 정상적으로 사용할 수 있지만, setFormatCode
- //가 FORMAT_NUMBER인 경우 실제 효과는 형식이 "0"으로 설정되지 않는다는 것입니다.
- //PHPExcel_Writer_Excel5_Format 클래스 소스 코드에서 getXf($style) 메소드를 수정해야 합니다.
- //if ($this->_BIFF_version == 0x0500) { (근접 라인) 앞에 //코드 줄:
- //if($ifmt === '0') $ifmt = 1
- //
- //피하려면 형식을 PHPExcel_Style_NumberFormat::FORMAT_NUMBER로 설정하세요. 특정 큰 숫자
- //다음 setAutoSize 메소드를 사용하면 각 줄의 내용을
- //원본 내용에 따라 표시할 수 있습니다.
- $objStyleA5
- ->getNumberFormat()
- ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);
-
- //设置字体
- $objFontA5 = $objStyleA5->getFont();
- $objFontA5->setName('Courier New');
- $objFontA5->setSize(10);
- $objFontA5->setBold(true);
- $objFontA5->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);
- $objFontA5->getColor()->setARGB('FF999999');
-
- //设置对齐方式
- $objAlignA5 = $objStyleA5->getAlignment();
- $objAlignA5->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
- $objAlignA5->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
-
- //设置边框
- $objBorderA5 = $objStyleA5->getBorders();
- $objBorderA5->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
- $objBorderA5->getTop()->getColor()->setARGB('FFFF0000'); // 색상
- $objBorderA5->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
- $objBorderA5->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
- $objBorderA5->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
-
- //设置填充颜color
- $objFillA5 = $objStyleA5->getFill();
- $objFillA5->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
- $objFillA5->getStartColor()->setARGB('FFEEEEEE');
-
- //이용자는 머니머니를 제조하는 데 사용됩니다.
- $objActSheet->duplicateStyle($objStyleA5, 'B1:C22');
-
-
- //****************************************
- //添加图그림
- $obj드로잉 = new PHPExcel_Worksheet_드로잉();
- $obj드로잉->setName('ZealImg');
- $obj드로잉->setDescription('Zeal이 삽입한 이미지');
- $obj드로잉->setPath('./zeali.net.logo.gif');
- $obj드로잉->setHeight(36);
- $obj드로잉->setCoordinates('C23');
- $obj드로잉->setOffsetX(10);
- $obj드로잉->setRotation(15);
- $obj드로잉->getShadow()->setVisible(true);
- $obj드로잉->getShadow()->setDirection(36);
- $obj드로잉->setWorksheet($objActSheet);
-
-
- //添加一个 새로운 워크시트
- $objExcel->createSheet();
- $objExcel->getSheet(1)->setTitle('测试2');
-
- //保护单원格
- $objExcel->getSheet(1)->getProtection()->setSheet(true);
- $objExcel->getSheet(1)->protectCells('A1:C22', 'PHPExcel');
-
-
- //****************************************
- //출입内容
- //
- $outputFileName = "output.xls";
- //到文件
- ////$objWriter->save($outputFileName);
- //또는
- //到浏览器
- ////header("콘텐츠 유형: 애플리케이션/강제 다운로드");
- ////header("콘텐츠 유형: 애플리케이션/옥텟-스트림");
- ////header("콘텐츠 유형: 애플리케이션/다운로드");
- ////header('Content-Disposition:inline;filename="'.$outputFileName.'"');
- ////header("콘텐츠 전송-인코딩: 바이너리");
- ////header("만료: 1997년 7월 26일 월요일 05:00:00 GMT");
- ////header("최종 수정: " . gmdate("D, d M Y H:i:s") . " GMT");
- ////header("캐시 제어: 재검증 필수, 사후 확인=0, 사전 확인=0");
- ////header("Pragma: 캐시 없음");
- ////$objWriter->save('php://output');
- ?>
-
复代码
|
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31