페이시북 인사이트 게시물 통계 합치기 php

<?php

error_reporting(E_ALL);
set_time_limit(0);

date_default_timezone_set('Europe/London');

/** Include path **/
set_include_path('PHPExcel/Classes/');

/** PHPExcel_IOFactory */
include 'PHPExcel/IOFactory.php';


$inputFileType = 'Excel2007';
$inputFileName = 'page_201710_201712.xlsx';

/**  Create a new Reader of the type defined in $inputFileType  **/
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
/**  Load $inputFileName to a PHPExcel Object  **/
$objPHPExcel = $objReader->load($inputFileName);



echo '<hr />';

echo 'Reading the number of Worksheets in the WorkBook<br />';
/**  Use the PHPExcel object's getSheetCount() method to get a count of the number of WorkSheets in the WorkBook  */
$sheetCount = $objPHPExcel->getSheetCount();
echo 'There ',(($sheetCount == 1) ? 'is' : 'are'),' ',$sheetCount,' WorkSheet',(($sheetCount == 1) ? '' : 's'),' in the WorkBook<br /><br />';

echo 'Reading the names of Worksheets in the WorkBook<br />';

$rowss = array();
/**  Use the PHPExcel object's getSheetNames() method to get an array listing the names/titles of the WorkSheets in the WorkBook  */
$sheetNames = $objPHPExcel->getSheetNames();

foreach($sheetNames as $sheetIndex => $sheetName) {
echo $sheetIndex,'=',$sheetName,"\n";
$sheet = $objPHPExcel->getSheet($sheetIndex); 
$maxRow = $sheet->getHighestRow();          // 마지막 라인
$maxColumn = $sheet->getHighestColumn();    // 마지막 칼럼
$target = "A"."1".":"."$maxColumn"."$maxRow";
$rows = $sheet->rangeToArray($target, NULL, TRUE, FALSE);
// if($sheetIndex=0){
// array_shift($rows);
// }else{
// foreach($rows as $k=>$v){
// $rowss[$sheetIndex][$k]
// }
// }
$rowss[$sheetIndex]  = $rows;
}
// print_r($rowss[0]);
// print_r($rowss);
// exit;
//=============
$inputFileNames = array(
// 'page_201710_201712.xlsx',
'page_201707_201709.xlsx',
'page_201704_201706.xlsx',
'page_201701_201703.xlsx',
'page_201610_201612.xlsx',
'page_201607_201609.xlsx',
'page_201604_201606.xlsx',
'page_201601_201603.xlsx',
'page_201510_201512.xlsx',
);
$inputFileType = 'Excel2007';

foreach ($inputFileNames as $inputFileName) {
// $inputFileName = 'page_201707_201709.xlsx';
/**  Create a new Reader of the type defined in $inputFileType  **/
$objReader2 = PHPExcel_IOFactory::createReader($inputFileType);
/**  Load $inputFileName to a PHPExcel Object  **/
$objPHPExcel2 = $objReader->load($inputFileName);
$sheetNames = $objPHPExcel2->getSheetNames();
foreach($sheetNames as $sheetIndex => $sheetName) {
echo $sheetIndex,'=',$sheetName,"\n";
$sheet = $objPHPExcel2->getSheet($sheetIndex); 
$maxRow = $sheet->getHighestRow();          // 마지막 라인
$maxColumn = $sheet->getHighestColumn();    // 마지막 칼럼
if($sheetIndex==0){
$target = "A"."3".":"."$maxColumn"."$maxRow";
$rows = $sheet->rangeToArray($target, NULL, TRUE, FALSE);
}else{
$target = "A"."2".":"."$maxColumn"."$maxRow";
$rows = $sheet->rangeToArray($target, NULL, TRUE, FALSE);
}
// var_dump($rowss[$sheetIndex]);
$rowss[$sheetIndex] = array_merge($rowss[$sheetIndex],$rows);
}
}

$sheetNames = $objPHPExcel->getSheetNames();

foreach($sheetNames as $sheetIndex => $sheetName) {
echo $sheetIndex,'=',$sheetName,"\n";
$sheet = $objPHPExcel->getSheet($sheetIndex); 
$maxRow = $sheet->getHighestRow();          // 마지막 라인
$maxColumn = $sheet->getHighestColumn();    // 마지막 칼럼
$target = "A"."1".":"."$maxColumn"."$maxRow";
// $rowss[$sheetIndex] = $sheet->rangeToArray($target, NULL, TRUE, FALSE);
$sheet->fromArray($rowss[$sheetIndex], '', 'A1');
}
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('result.xlsx');

?>
댓글
  • No Nickname
    No Comment
  • 권한이 없습니다.
    {{m_row.m_nick}}
    -
목록형 📷 갤러리형
제목
[기본형] HTML (with 부트스트랩5.3 , jquery 3.7, vue.js)
유용한 리눅스(LINUX) 명령어
[공지] 기술 게시판
3.31
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.18
4.19
4.20
4.21
4.22
4.23
4.24
4.25
4.26
4.27
4.28
4.29
4.30
5.1
5.2
5.3
5.4