[PHP] 엑셀 다운로드 시 숫자형을 문자형으로 출력하기
문제현상
문자형을 엑셀로 다운로드했을 때 엑셀에 속성이 먹히면서 변형되는 경우가 있다.
아래와 같은 소스를 이용해서 엑셀 다운로드하면
<?php
header("Content-Type: application/x-msexcel; name=\"".date("ymd", time()).".xls\"");
header("Content-Disposition: inline; filename=\"".date("ymd", time()).".xls\"");
?>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
<div>
<table>
<tbody>
<td>13:00</td>
<td>jun9999</td>
</tbody>
</table>
</div>
아래와 같이 속성이 적용되어 출력된다.
해결방법
td에 style=mso-number-format:'\@' 을 추가한다.
<?php
header("Content-Type: application/x-msexcel; name=\"".date("ymd", time()).".xls\"");
header("Content-Disposition: inline; filename=\"".date("ymd", time()).".xls\"");
?>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
<div>
<table>
<tbody>
<td style=mso-number-format:'\@'>13:00</td>
<td style=mso-number-format:'\@'>jun9999</td>
</tbody>
</table>
</div>
출력결과
"13:00" 도 속성 적용없이 문자 그대로 출력된다.
반응형
'개발하는 '정' > PHP' 카테고리의 다른 글
PHP 그누보드5 관리자 메뉴 새창으로 열기 (0) | 2022.03.04 |
---|---|
PHP/MYSQL rownum으로 쿼리 출력한 순서대로 이전글 다음 글 구하기 (0) | 2022.02.22 |
PHP 요일 구하기 (0) | 2022.02.17 |
[PHP] HTML 태그 제거 함수 (Strip_tags) + strip_tags 안 먹힐 때 해결 (0) | 2021.05.07 |
PHP 엑셀 다운로드 한글 깨짐 해결 (0) | 2021.04.23 |
댓글