| 
<?php// Max Base
 // https://github.com/BaseMax/MergeExcelFilesToOnePerColumns
 // 2021-04-13, 2021-04-22
 
 require "excel.php";
 require "excel-create.php";
 
 $authors = [];
 $counts = [];
 $data = [];
 
 $prefix = "input-first/";
 $prefix = "input-second/";
 
 $files = glob($prefix . "*.xlsx");
 $files_count = 0;
 
 $count = 65;
 $count = 39;
 
 // foreach($files as $file) {
 for($i=1;$i<=$count;$i++) {
 $file = $prefix . $i.".xlsx";
 if($file === "" || $file === "." || $file === "..") {
 continue;
 }
 // if($files_count > 5) {
 //     // break;
 // }
 $files_count++;
 // print $file."\n";
 if($xlsx = SimpleXLSX::parse($file) ) {
 $rows = $xlsx->rows();
 // print_r($rows);
 $values = [];
 foreach($rows as $row) {
 if(isset($row[1])) {
 $values[] = $row[1];
 }
 else {
 $values[] = "";
 }
 }
 // print_r($values);
 $counts[] = (int) count($values);
 $authors[] = $values;
 // exit();
 // $values = [];
 // foreach($rows as $row) {
 //     print_r($row);
 //     if(isset($row[0], $row[1]) && $row[0] !== "" && $row[1] !== "") {
 //         $row[1] = $row[1];
 //         $values[] = $row[1];
 //     }
 // }
 // // print_r($values);
 // $counts[] = (int) count($values);
 // $authors[] = $values;
 // exit();
 } else {
 echo SimpleXLSX::parseError();
 }
 }
 
 // print_r($authors);
 
 $m = max($counts);
 // print $m."\n";
 // exit();
 $c = count($authors);
 // print count($authors[0])."\n";
 // exit();
 
 for($i=1;$i<=$m;$i++) {
 $data[$i-1] = [];
 }
 
 for($i=1;$i<=$m;$i++) {
 for($j=1;$j<=$c;$j++) {
 $data[$i-1][$j-1] = "";
 if(isset($authors[$j-1][$i-1])) {
 $data[$i-1][$j-1] = $authors[$j-1][$i-1];
 }
 }
 }
 // print_r($data);
 // exit();
 
 // for($i=1;$i<=$c;$i++) {
 //     for($j=1;$j<=$m;$j++) {
 //         if(isset($authors[$i-1][$j])) {
 //             print $authors[$i-1][$j];
 //         }
 //         print "\t";
 //     }
 //     print "\n";
 // }
 
 // exit();
 
 // for($j=0;$j<500;$j++) {
 //     $has = false;
 //     for($i=0;$i<$files_count;$i++) {
 //         print $i."\t";
 //         if(isset($authors[$i][$j])) {
 //             $authors[$i][$j] = trim($authors[$i][$j]);
 //             if($authors[$i][$j] !== "") {
 //                 $has = true;
 //                 print $authors[$i][$j];
 //                 print "\t";
 //             }
 //         }
 //     }
 //     if($has === true) {
 //         print "\n";
 //     }
 // }
 
 $xlsx = SimpleXLSXGen::fromArray($data);
 $xlsx->saveAs('res.xlsx');
 
 
 |