亚洲国产精品成人无码区,公天天吃我奶躁我的比视频,亚洲国产欧美视频亚洲国产精品一区二区成人片不卡,天天躁日日躁狠狠躁视频2021,起视碰看97视频在线少妇久久久久久人妻无码, 芒果乱码一线二线三线新区 ,亚洲熟妇无码AⅤ不卡在线播放,人妻少妇乱子伦无码专区

400-800-9385
網(wǎng)站建設資訊詳細

PHPexcel導入導出的簡單使用

發(fā)表日期:2020-05-29 11:25:23   作者來源:李彬   瀏覽:5776   標簽:PHPexcel導入導出    
使用php的時候一定會遇到表格導入導出的功能吧,這里簡單來解釋一下PHP中PHPExcel的使用如何來導入導出數(shù)據(jù)。
首先要去PHPExcel官網(wǎng)下載

1

 
這是我項目中的phpexcel類庫
先說一下導入 主要是要通過文件上傳,然后獲取到這個上傳的文件 然后可以用PHPExcel的方法去讀取文件的內(nèi)容 并返回一個數(shù)組,然后拼裝你要的數(shù)據(jù)進行數(shù)據(jù)庫操作
 
這里我用的封裝好的方法去讀取的excel文件的數(shù)據(jù)
$filename 文件的地址 需要一個相對路徑
$begin 從第幾行開始讀取 (這里一般是第二行 第一行基本是內(nèi)容的標題或者描述)
$allColumn 數(shù)據(jù)最后一列的字母  比如第G列是最后的數(shù)據(jù)列 就傳G

2

 
封裝方法:
function excelImport($filename, $begin,$allColumn) {
    Vendor('PHPExcel.PHPExcel');
    //建立reader對象
    $PHPReader = new PHPExcel_Reader_Excel2007();
    if (!$PHPReader->canRead($filename)) {
        $PHPReader = new PHPExcel_Reader_Excel5();
        if (!$PHPReader->canRead($filename)) {
            return array();
        }
    }
 
    //建立excel對象,此時你即可以通過excel對象讀取文件,也可以通過它寫入文件
    $PHPExcel = $PHPReader->load($filename);
 
    /*     * 讀取excel文件中的第一個工作表 */
    $currentSheet = $PHPExcel->getSheet(0);
    /*     * 取得最大的列號 */
  //  $allColumn = $currentSheet->getHighestColumn();
    /*     * 取得一共有多少行 */
    $allRow = $currentSheet->getHighestRow();
 
    $returnCell = '';
    //循環(huán)讀取每個單元格的內(nèi)容。注意行從1開始,列從A開始
    for ($rowIndex = $begin; $rowIndex <= $allRow; $rowIndex++) {
        for ($colIndex = 'A'; $colIndex <= $allColumn; $colIndex++) {
            $addr = $colIndex . $rowIndex;
            $cell = $currentSheet->getCell($addr)->getValue();
            if ($cell instanceof PHPExcel_RichText) {
                //富文本轉(zhuǎn)換字符串
                $returnCell[$rowIndex][$colIndex] = $cell->__toString();
            } else {
                $returnCell[$rowIndex][$colIndex] = $cell;
            }
        }
    }
    return $returnCell;
 
}

3

 
讀取后會輸出一個數(shù)組,如下

7

 

 
獲取到數(shù)據(jù)后使用循環(huán)取出里面的數(shù)據(jù) 完成后清空了一下數(shù)據(jù)數(shù)組
這是簡單兩列數(shù)據(jù)的導入 .
 
再來說一下導出
我也是使用的PHPExcel
 
這里是先創(chuàng)建一個表格第一行的標題數(shù)組和導出的文件名稱

 
一個一維數(shù)組鍵名要對應 表格列的字母

 
下面是要拼裝導出數(shù)據(jù)
這是一個二維數(shù)組 需要 每行對應響應的列的字母

 
這里給了一個key值來確定數(shù)據(jù)是從第幾行開始寫入的
因為有標題的存在所以是從第二行開始如正式數(shù)據(jù),

 
使用下面這個封裝的導出方法進行導出 ,會自動使用瀏覽器下載你要導出的表格
 
 
 
 
 
 
 
 
 
 
 
 
 
這里也封裝了一個導出的方法
 /**
 * 導出成Excel文件
 * @param type $filename 文件名
 * @param type $data_title 頭部字段
 * @param type $data_content 內(nèi)容
 * @param type $Sheet1
 * @param type $save_to_file 是否保存成文件,true保存
 * @param type $save_path 文件保存路徑
 */
function excelExport($filename, $data_title, $data_content, $Sheet1 = "Sheet1", $save_to_file = false, $save_path = './Static/File/') {
    Vendor('PHPExcel.PHPExcel');
    //PHPExcel支持讀模版 所以我還是比較喜歡先做好一個Excel的模版  比較好,不然要寫很多代碼  模版我放在根目錄了
    //創(chuàng)建一個對象
    $objPHPExcel = new PHPExcel();
    $objPHPExcel->getProperties()->setCreator("qiandai");
    //獲取當前活動的表
    $objActSheet = $objPHPExcel->setActiveSheetIndex(0);
    $objActSheet->setTitle($Sheet1); //工作表標簽
    foreach ($data_title as $data_title_key => $data_title_value) {//寫入文件表頭內(nèi)容
        $objActSheet->setCellValue($data_title_key.'1', $data_title_value);
        $objPHPExcel->getActiveSheet()->getColumnDimension($data_title_key)->setWidth(30);//設置列的寬度
    }
    //現(xiàn)在就開始填充數(shù)據(jù)了  (從數(shù)據(jù)庫中)  $data_content
    foreach ($data_content as $data_content_value) {//寫入 文件內(nèi)容
        foreach ($data_content_value as $data_content_key => $data_content_value2) {
            $objActSheet->setCellValue($data_content_key, $data_content_value2);
        }
    }
 
    //導出
    header('Content-Type: application/vnd.ms-excel;charset=utf-8');
    header('Content-Disposition: attachment;filename="' . $filename . '.xls"');
    header('Cache-Control: max-age=0');
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
    if ($save_to_file) {
        $objWriter->save($save_path . $filename);
    } else {
        $objWriter->save('php://output');
        exit;
    }
}
如果有什么方法不清楚或者想修改表格的其他設置的可以去查看手冊進行添加。
導入導出主要還是明白封裝的方法和創(chuàng)建對應的數(shù)組,希望能對剛接觸到表格導入導出無法入手的人有所幫助。
如沒特殊注明,文章均為方維網(wǎng)絡原創(chuàng),轉(zhuǎn)載請注明來自http://www.oulysa.com/news/5682.html
成本人片无码中文字幕免费| 久久综合亚洲鲁鲁五月天欧美 | 无码夫の前で人妻を侵犯| 午夜色大片在线观看免费| 亚洲精品中文字幕无乱码| 2022最新国产自产精品| 亚洲色无码专区在线观看| 亚洲日韩精品国产3区| 内射白浆一区二区在线观看在线a | 无码人妻一区二区三区麻| 久久久久久久久精品免费看片| 亚洲一区二区三区AV无码| 亚洲国产精品无码久久青草| 国产97视频人人做人人爱免费| 成人小说亚洲一区二区三区| 欧美综合自拍亚洲图久青草| 免费无码又爽又刺激网站| 最近最新高清中文字幕| 精品久久人人做人人爽综合| 国产精品一区二区 尿失禁| 免费观看又污又黄又无遮挡的网站| 亚洲国产日韩a在线播放| 久久亚洲日韩av一区二区三区| 免费久久香蕉网站| 人妻丰满熟AV无码区HD| 国产中文精品一区二区在线观看| 亚洲精品国产一区二区三在线观看| 成人国产精品高清在线观看| SM脚奴调教丨踩踏贱奴| 伊人久久大香线蕉综合影院首页| 欧美XXXXX极品少妇| 亚洲AV永久无码精品三区在线| 免费人成视频在线观看| 亚洲国产成人无码网站大全| 一级网站无遮挡在线观看| 一极a做片性视频无码鲁鲁网| 波多野结衣姐弟中文字幕天| 日韩精品无码专区国产| 久久久久国产精品免费观看| 国产麻豆9l精品三级站| 久久久久久亚洲精品无码夜夜|