茫茫網海中的冷日 - 對這文章發表回應
茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1671215 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_2290104.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

對這文章發表回應

發表限制: 非會員 可以發表

發表者: 冷日 發表時間: 2011/11/29 4:07:52
用 PHP 讀取 Excel 檔案。
 |  Category: 資訊科技

最近因為公司希望我去做一個可以直接讀取 Excel 檔案中的值並更新到資料庫的網頁程式。
就找到了 phpExcelReader 的套件,經過了幾次的測試發現它有一些編碼及格式上的問題。 phpExcelReader 並沒辦法處理某些 Excel 檔案,目前我也還沒找到原因;只知道這樣子不穩定的現象對我會造成困擾。 所以放棄了這一個套件。

接著又再找到另外一套叫 PHPExcel 的套件,他的功能更是強大,且可對 excel 檔案做寫入的動作。
PHPExcel 可以在 http://www.codeplex.com/PHPExcel/ 被找到。

網路上有很多人對 PHPExcel 有一種誤解,認為它只能存取 Excel 2007 的檔案。 其實現在新的版本已經把 Excel 2003 等早期的 Excel 存取支援做進去了。 以下小示範一下如何將一個 Excel 讀入後轉成 Array。



ini_set("memory_limit","1024M");  //設定php可使用的最大記憶體量,如果你的 Excel 只是幾十KB的話,可以將這個值設小一點。
require_once(‘Classes/PHPExcel/IOFactory.php’);
$objPHPExcel = PHPExcel_IOFactory::createReader(‘Excel5′); //設定為舊 Excel 版本相容
$objPHPExcel = PHPExcel_IOFactory::load("j88.xls");  //設定要讀取的檔案
//$objWorksheet = $objPHPExcel->getActiveSheet();  //設定讀取當前頁面
$objWorksheet = $objPHPExcel->getSheet(0);  //設定讀取第一個頁面
$array_out[] = null; //建立一個空 array
foreach ($objWorksheet->getRowIterator() as $row_key => $row){  //開始做 row 迴圈
$cellIterator = $row->getCellIterator();     //抓取這一行的 cell 資訊
$cellIterator->setIterateOnlyExistingCells(false);  //讀入整行的cells,如果為空就回傳 null
foreach ($cellIterator as $cell_key => $cell){  //做 cell 迴圈
$array_out[$row_key][$cell_key] = $cell->getValue()."; //將每一個row 的 cell 寫入 array
//上面會看到最後有 ." 是為了要強破 array 寫入的是字
//串,不然到時候 array 裡存的會是 object
}
}
echo "<pre>";
print_r($array_out);  //輸出的 array
echo "</pre>";


原文出處:Dog’s Everything » Blog Archive » 用 PHP 讀取 Excel 檔案。
內容圖示
url email imgsrc image code quote
樣本
bold italic underline linethrough   












 [詳情...]
validation picture

注意事項:
預覽不需輸入認證碼,僅真正發送文章時才會檢查驗證碼。
認證碼有效期10分鐘,若輸入資料超過10分鐘,請您備份內容後,重新整理本頁並貼回您的內容,再輸入驗證碼送出。

選項

Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|