php操作Excel檔案,將Excel中資料匯入到資料庫

來源:互聯網
上載者:User
思路一:使用xml檔案儲存Excel中列與資料表中欄位對應關係,然後通過xml檔案來添加資料思路二:Excel中第一行儲存欄位名,其他行儲存資料思路三:將Excel中列與資料表中欄位對應關係,用一個.php檔案儲存在此講解的是思路二,使用的是PHPExcel

1.建立對象

$objReader = PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format
2.指定excel檔案
$objPHPExcel = $objReader->load($newFileName);
$sheet = $objPHPExcel->getSheet(0); //擷取操作Excel中第一張表的資料
$highestRow = $sheet->getHighestRow(); // 取得總行數 返回是int類型
$highestColumn = $sheet->getHighestColumn(); // 取得總列數 返回是字母
$allFileds='';
$filedsSum='A'; //設定有效列的預設最大值
$dataInfo='';
$tidIndex=0;
for ($i='A';$i<$highestColumn;++$i){
$curFiled=$sheet->getCell($i.'1')->getValue();
if(!empty($curFiled)){ //過濾無效的列
$filedsSum=$i;
$allFileds.=',`'.$curFiled.'`';
}
}
$inputDataSql=''; //插入sql語句
for($j=2; $j<=$highestRow; $j++){
$inputData=array();
for ($i='A';$i<=$filedsSum;++$i){
$inputData[]='\''.$sheet->getCell($i.$j)->getValue().'\'';
//因為不確定該欄位是否為string還是int類型,所以都加上''就不會出現錯誤
$inputDataSql.=',('.implode(',', $inputData).')';
}
$inputDataSql=substr($inputDataSql,1); //去掉最前面的一個','逗號
$sql='INSERT INTO ('.$allFileds.') VALUES '.$inputDataSql;

最後調用相應的資料庫操作對象,執行插入操作即可。

以上就介紹了php操作Excel檔案,將Excel中資料匯入到資料庫,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.