반응형
CSV MIME 타입의 사용 방법
작업 중인 웹 애플리케이션에서 사용자는 CSV 파일에 대한 링크를 클릭할 수 있습니다.MIME 유형에 대해 설정된 헤더는 없으므로 브라우저는 이를 텍스트로 렌더링합니다.calc, excel, gnumeric 등으로 직접 열 수 있도록 이 파일을 .csv 파일로 보내 주셨으면 합니다.
header('Content-Type: text/csv');
echo "cell 1, cell 2";
이 코드는 내 컴퓨터에서는 정상적으로 동작하지만(항상 그렇지 않은가) 다른 컴퓨터에서는 동작하지 않습니다.
내 브라우저는 야간 빌드 FF 3.0.1(Linux)입니다.동작하지 않는 브라우저는 IE 7과 FF 3.0(Windows)입니다.
제가 모르는 별난 일이 있나요?
다음과 같은 방법으로 브라우저에 "다른 이름으로 저장..." 대화상자를 강제로 열 수 있습니다.
header('Content-type: text/csv');
header('Content-disposition: attachment;filename=MyVerySpecial.csv');
echo "cell 1, cell 2";
대부분의 주요 브라우저에서 사용할 수 있습니다.
언어 또는 프레임워크를 지정하지 않았지만 다음 헤더가 파일 다운로드에 사용됩니다.
"Content-Disposition: attachment; filename=abc.csv"
Internet Explorer에서 다운로드가 제대로 작동하려면 Pragma: public 헤더를 지정해야 하는 경우가 많습니다.
header('Pragma: public');
내 2센트만...
이 코드를 사용하여 CSV를 포함한 모든 파일을 내보낼 수 있습니다.
// application/octet-stream tells the browser not to try to interpret the file
header('Content-type: application/octet-stream');
header('Content-Length: ' . filesize($data));
header('Content-Disposition: attachment; filename="export.csv"');
언급URL : https://stackoverflow.com/questions/398237/how-to-use-the-csv-mime-type
반응형
'programing' 카테고리의 다른 글
gmtime()의 시간 + 날짜 출력에서 epoch 이후의 초수를 얻는 방법은 무엇입니까? (0) | 2022.09.21 |
---|---|
Java 8 Map의 putIfAbsent와 computeIfAbsent의 차이점은 무엇입니까? (0) | 2022.09.21 |
동적으로 PHP과 QR코드 생성. (0) | 2022.09.21 |
JWT를 ReactJs와 함께 localStorage에 저장해도 안전합니까? (0) | 2022.09.21 |
MySQL에서 텍스트 열에 기본값을 지정할 수 없는 이유는 무엇입니까? (0) | 2022.09.21 |