2013-02-27 2 views
1

남자입니다. 당신은 PHP를 통해 파일을 엑셀 HTML의 좋은 변환기를 알고 일 이니? 나는 많은 것을 보았지만 (PHPExcel과 SimpleExcel) dompdf가하는 일은 아무 것도 할 수 없다. (dompdf는 PHP를 통한 html to pdf 변환기입니다)dompdf와 같은 변환기를 능가하는 좋은 html은

html (예 : strong, i, u 등의 속성 포함)을 변환 할 때 dompdf와 같은 것이 있습니까? 게시하십시오.

+0

CSS는 물론 인라인 스타일링이 필요합니까? –

+0

테이블로만 구성된 HTML 문서를 변환하는 것에 대해 이야기하고 있습니까? Excel은 기본적으로 이와 같은 것을 열 수 있습니다. 내가 찾은 모든 문서 스타일을 포착 할 수는 없지만 꽤 좋은 작업입니다. – BrianS

+0

@ 마크 베이커, 네. 또한 CSS가 필요합니다. – Zarashi99

답변

1

이전에는 그대로 HTML 문서를 제공했습니다. Excel은 HTML 문서를 완벽하게로드하여 스프레드 시트로 파싱 할 수 있습니다. Excel은 많은 CSS 속성을 이해합니다. 당신은 HTTP 헤더에 엑셀 MIME 형식을 추가하기 만하면됩니다, for example :

header('Content-Type: application/vnd.ms-excel'); 
header('Content-Disposition:Attachment;Filename=htmltable.htm'); 
readfile('htmltable.html'); 

불행하게도이 예전과 같은 옵션을 매력으로하지 않습니다. Excel 2007부터 프로그램 performs some basic document type confirmation. HTML은 XLS가 아니기 때문에 (분명히) 경고를받습니다. Excel은 여전히 ​​문서를 열고 올바르게 표시 할 수 있지만 실제로 경고를 사용하지 않도록 설정할 수있는 옵션은 없습니다.

PHPExcel을 시도해보십시오. 나는 그것을 사용한 적이 있지만, 분명히 당신은 convert a document from HTML to XLS로 사용할 수 있습니다 : 코드의 단지 3 라인 한 형식에서 다른 형식으로 파일을 변환 할 수 있습니다 작가와 독자를 결합하여

:

$objPHPExcel = PHPExcel_IOFactory::load("XMLTest.xml"); 
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); 
$objWriter->save('covertedXml2Xlsx.xlsx'); 
+0

Sir @BrianS, 답장을 보내 주셔서 감사합니다. 필자는 PHP를 통해 Excel에 HTML을 포함하는 필자 자신의 주제에 대해 더 연구했다. 나는 해결책을 찾은 것 같다. 고마워요. <표 테두리 = "1"> 스타일과 내용이 엑셀에 표시됩니다 무엇이든 : D는 내가 더 이상 어떤 라이브러리를 필요가 없습니다 나에게 보인다 – Zarashi99

+0

... – Zarashi99

-1

fputcsv 너 뭐야? HTML에 도착하기 전에 정보가 있으면 쉽게. 열/행을 건너 뛰고 머리글을 만들고 페이지를 만드는 것과 같은 멋진 정보를 추가 할 수도 있습니다.

+0

고마워요, @ Vlad! 나는 fputcsv를 시도 할 것이다 – Zarashi99

+0

fputcsv는 OPs 전제 조건 중 하나 인 스타일링을 처리 할 능력이 없다. –

+0

fputcsv에 대해 연구했지만 모양새를 처리 할 수없는 것처럼 보인다 ... 단순한 Excel 파일 만 있으면 좋지만 .. : D – Zarashi99

0

PHPExcel을 사용하여 자동화 된 보고서를 작성하는 데 많은 시간을 들였지만 엄청나게 다루기 힘들었습니다. 데이터를 .csv (fputcsv)에 쓰고, .csv 파일을 열고 모든 형식을 구현하는 COM 매크로를 실행하는 데 사용자 친화적이고 효과적인 방법을 찾았습니다.

VBScript에서 Excel 매크로를 실행하고 PHP의 exec 함수를 호출하여 VBScript를 실행하십시오.