ADUNIT000

在使用PHP匯入excel表格的時候

有個套件很好用 PHP-ExcelReader ( http://sourceforge.net/projects/phpexcelreader/ )

這套件對於讀取excel資料相當簡便

不需要太多的程式碼

下面我們就來看看如何使用  

首先,我們先到把套件抓下來 

抓下來後我們先來檢查套件內容 應該會有 "oleread.inc"、"reader.php"兩個檔案

然後打開"reader.php" 把 require_once 'Spreadsheet/Excel/Reader/OLERead.php'; 換成 require_once 'oleread.inc';  

接著我們就可以另外在寫一個PHP程式來使用這個套件了  

//引用套件,這邊要特別注意路徑

require_once 'reader.php';  

//建立excel檔的物件

$data = new Spreadsheet_Excel_Reader();  

//設定輸出編碼,指的是從excel讀取後再進行編碼

$data->setOutputEncoding('UTF-8');  

//載入要讀取的檔案

$data->read('test.xls');  

//這行可加可不加,因為有時候會出現錯誤,錯誤的原因是因為可能在excel的表格內含有空白

error_reporting(E_ALL ^ E_NOTICE);  

//以下則是以迴圈的方式讀取資料

//下面範例則是先讀取欄位再讀取列,因此i代表列的數目,j則代表欄位的數目

      for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {

          //如下圖因為excel的表格第一列都會寫上欄位名稱,所以這邊預設不會讀取第一列

          if($i!=1){

              for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) { 

                  $value[0] = $data->sheets[0]['cells'][$i][1];

                  $value[1] = $data->sheets[0]['cells'][$i][2];

                  $value[2] = $data->sheets[0]['cells'][$i][3];

              }

          }

     }  

說明:藍色的那一列並不會被讀取,而本文範例讀取順序是 1 -> stanley -> 國語 -> 2 -> stanley543 -> 國語,以此類推... 

excel範例   

 

以上是使用 PHP-ExcelReader 套件去讀取excel檔案的方法

 

 

如果覺得對你有幫助的話. 請幫小弟按個讚吧~

 

相關文章:PHP生成Excel 

 

文章標籤
創作者介紹

史丹利愛碎念

newaurora 發表在 痞客邦 PIXNET 留言(3) 人氣()


留言列表 (3)

發表留言
  • 訪客
  • 不好意思,我是php的新手
    想請問一下, 下載完PHP-ExcelReader的套件解壓縮完的那兩個檔應該要放在哪裡呢
    感激不盡,謝謝你的回答
  • 不好意思~現在才看到^^"
    解壓縮完的套件放哪裡都沒有關係
    (放根目錄或其他資料夾都可以)
    重點是你引用的時候要能讀到檔案就可以了

    newaurora 於 2014/05/23 23:23 回覆

  • sandy
  • 您好:
    不好意思,想跟您請教一下
    有照您的方式去修改,但在瀏覽器所呈現頁面是空白,請問是什麼原因?
  • 哈囉~
    如果完全照上面範例跑的話
    可能要先麻煩您檢察是不是有寫入顯示的程式,例如 echo 或是 print_r
    再來就可能需要檢查您的程式中是不是有取到值?

    newaurora 於 2014/10/08 22:41 回覆

  • h
  • 感謝您的教學

    想請問一下
    這個套件是否支援xls以外的格式
    例如 xlsx
找更多相關文章與討論