상하로만 셀병합된 Excel 데이터를 csv 형식으로 저장하고
이 데이터가 $csv_data 2차원 array에 들어 있다고 가정
<?php
$count_csv_data = count($csv_data);
for($i=0; $i<$count_csv_data; $i++) {
for($j=0; $j<count($csv_data[0]); $j++) {
$rowspan_csv_data[$i][$j] = 0;
}
}
for($i=$count_csv_data-1; $i>=0; $i--) {
for($j=0; $j<count($csv_data[0]); $j++) {
if($csv_data[$i][$j] == "") {
$rowspan_csv_data[$i-1][$j] = $rowspan_csv_data[$i][$j] + 1;
$rowspan_csv_data[$i][$j] = 0;
} else {
$rowspan_csv_data[$i][$j] += 1;
}
}
}
$table_data = "<table>";
for($i=0; $i<$count_csv_data; $i++) {
$table_data .= "<tr>";
for($j=0; $j<count($csv_data[0]); $j++) {
if($rowspan_csv_data[$i][$j] == 0) {
} else if($rowspan_csv_data[$i][$j] == 1) {
$table_data .= "<td>";
$table_data .= $csv_data[$i][$j];
$table_data .= "</td>";
} else {
$table_data .= "<td rowspan=".$rowspan_csv_data[$i][$j].">";
$table_data .= $csv_data[$i][$j];
$table_data .= "</td>";
}
}
$table_data .= "</tr>";
}
$table_data .= "</table>";
댓글 없음:
댓글 쓰기