การแปลงไฟล์ Microsoft Excel 2007 .xlsx เป็น text ด้วย php

หมวดสำหรับแบ่งบันความ รู้ต่างๆ จะมีหมวดย่อยๆ ในหมวดนี้ เช่น php, SQL, XML, CSS

Moderators: mindphp, ผู้ดูแลกระดาน

User avatar
tsukasaz
PHP VIP Members
PHP VIP Members
Posts: 12181
Joined: 18/04/2012 9:39 am

การแปลงไฟล์ Microsoft Excel 2007 .xlsx เป็น text ด้วย php

Post by tsukasaz »

การแปลงไฟล์ Microsoft Word 2007 .docx เป็นข้อความ text ด้วย php
การแปลงไฟล์ Microsoft PowerPoint .pptx เป็นข้อความ text ด้วย php

สำหรับการแปลงไฟล์ .xlsx จะค่อยข้างยุ่งยากกว่าไฟล์ 2 ประเภท ด้านบน เนื่องจากเนื้อหาถูกแบ่งไปตามคอลัมน์ แถว และชีท สำหรับตัวอย่างโค้ดจะใช้คลาส SimpleXLSX จาก http://www.phpkode.com/source/s/simple- ... .class.php ในการแปลงไฟล์นะครับ

ตัวอย่างโค้ดการใช้งาน แปลงไฟล์ .xlsx เป็น text ด้วย php

Code: Select all

<?php
require_once 'simplexlsx.class.php';

$xlsx = new SimpleXLSX('example.xlsx');

for($j = 1; $j <= count($xlsx->sheets()); $j++) {
    list($num_cols, $num_rows) = $xlsx->dimension($j);
    echo 'Start sheet '.$j.'<br />';
    foreach( $xlsx->rows() as $r ) {
            for( $i=0; $i < $num_cols; $i++ ) {
                    echo ( (!empty($r[$i])) ? $r[$i] : '' ).' ';
            }
    }
    echo '<br />finish sheet '.$j.'<br /><br />';
}
?>
Attachments
simplexlsx.class.zip
(3.83 KiB) Downloaded 199 times
Last edited by tsukasaz on 19/11/2012 11:43 am, edited 1 time in total.
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)

User avatar
tsukasaz
PHP VIP Members
PHP VIP Members
Posts: 12181
Joined: 18/04/2012 9:39 am

Re: การแปลงไฟล์ Microsoft Excel 2007 .xlsx เป็น text ด้วย php

Post by tsukasaz »

ทดสอบโค้ดนะครับ ไฟล์ example.xlsx ใส่เนื้อหาไว้เหมือนกัน 3 sheet
Attachments
xlsx1.JPG
xlsx1.JPG (61.8 KiB) Viewed 3848 times
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)

User avatar
tsukasaz
PHP VIP Members
PHP VIP Members
Posts: 12181
Joined: 18/04/2012 9:39 am

Re: การแปลงไฟล์ Microsoft Excel 2007 .xlsx เป็น text ด้วย php

Post by tsukasaz »

ผลการรันโค้ดครับ
Attachments
xlsx2 (Small).JPG
xlsx2 (Small).JPG (83.28 KiB) Viewed 3848 times
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)

ballnakata
PHP Newbie
PHP Newbie
Posts: 2
Joined: 28/10/2008 8:55 am

Re: การแปลงไฟล์ Microsoft Excel 2007 .xlsx เป็น text ด้วย php

Post by ballnakata »

ถ้าผมมีข้อมูล a1 ถึง a1000 อยากจะแปลงเป็น txt เซลล์ละ 1 file เป็น a1.txt ถึง a1000.txt ครับ

ขอความช่วยเหลือด้วยครับ ขอบคุณครับ

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 25180
Joined: 22/09/2008 6:18 pm
Contact:

Re: การแปลงไฟล์ Microsoft Excel 2007 .xlsx เป็น text ด้วย php

Post by mindphp »

a1 ถึง a1000 คือ sheet หรอครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042

ballnakata
PHP Newbie
PHP Newbie
Posts: 2
Joined: 28/10/2008 8:55 am

Re: การแปลงไฟล์ Microsoft Excel 2007 .xlsx เป็น text ด้วย php

Post by ballnakata »

mindphp wrote:a1 ถึง a1000 คือ sheet หรอครับ
เป็นเซลล์ครับ 1000 แถว :-D

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 25180
Joined: 22/09/2008 6:18 pm
Contact:

Re: การแปลงไฟล์ Microsoft Excel 2007 .xlsx เป็น text ด้วย php

Post by mindphp »

แบ่งตามตัวแปล $num_cols
ครับ ทำ loop สร้างไฟล์ ใหม่ ตามจำนวน col แล้วค่อยๆ เขียนไฟล์ลงไปตาม loop row
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042


Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Share Knowledge”

Who is online

Users browsing this forum: No registered users and 7 guests