How to : PHP กับการ Export Excel อย่างง่าย (Workshop)

export_excel_imgบ่อยครั้งงานที่ต้องการ Export ตาราง HTML ให้อยู่ในรูปแบบ .xls นั้น เป็นงานที่ดูเหมือนไม่ยาก แต่วิธีการ Export to excel หลายวิธีนั้นดูแล้วช่างยุ่งยาก วันนี้ทิปสยามมีเทคนิค PHP to Excel มาฝากกัน จากการเจอปัญหาด้วยตัวเองและนำวิธีนี้มาแก้ปัญหา ที่สำคัญรองรับภาษาไทย !

การ Export ข้อมูลรูปแบบเฉพาะของ MS excel ซึ่งต้องอาศัย Library เฉพาะ

Code :

<?php
header(“Content-Type: application/vnd.ms-excel”);
header(‘Content-Disposition: attachment; filename=”MyXls.xls”‘);#ชื่อไฟล์
?>

<html xmlns:o=”urn:schemas-microsoft-com:office:office”

xmlns:x=”urn:schemas-microsoft-com:office:excel”

xmlns=”http://www.w3.org/TR/REC-html40″>

<HTML>

<HEAD>

<meta http-equiv=”Content-type” content=”text/html;charset=tis-620″ />

</HEAD><BODY>

<TABLE  x:str BORDER=”1″>

<TR>

<TD><b>AAA</b></TD>

<TD><b>AAA</b></TD>

<TD><b>AAA</b></TD>

</TR>

<TR>

<TD>BBB</TD>

<TD>BBB</TD>

<TD>BBB</TD>

</TR>

<TR>

<TD>001</TD>

<TD>002</TD>

<TD>003</TD>

</TR>

<TR>

<TD>ภาษาไทย</TD>

<TD>ภาษาไทย</TD>

<TD>ภาษาไทย</TD>

</TR>

</TABLE>

</BODY>

</HTML>

 

จุดหลักมีอยู่ 3 จุด
1. แป่ะ Header เพื่อบอกว่าจะเปิดไฟล์ Excel

<?phpheader(“Content-Type: application/vnd.ms-excel”);header(‘Content-Disposition: attachment; filename=”MyXls.xls”‘);#ชื่อไฟล์?>

2.ส่วนนี้มีผลกับการแสดง Excel จำเป็นมาก

<html xmlns:o=”urn:schemas-microsoft-com:office:office”xmlns:x=”urn:schemas-microsoft-com:office:excel”xmlns=”http://www.w3.org/TR/REC-html40″>

3. อันนี้แหล่ะที่จะทำให้ข้อมูลที่นำหน้าด้วยเลขศูนย์แสดงขึ้นมา เพราะกำหนดให้เป็น String

<TABLE  x:str BORDER=”1″>

————————————————-

ดาวน์โหลดไฟล์ตัวอย่าง – Demo

ขอขอบคุณผู้นำความรู้มาเผยแพร่ และขออภัยที่จำที่มาของเนื้อหาไม่ได้ หวังว่าจะเป็นประโยชน์กับเพื่อน ๆ ไม่มากก็น้อย