成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

PHP導(dǎo)出數(shù)據(jù)到表格的實(shí)例

Brenner / 1265人閱讀

摘要:我發(fā)現(xiàn)最近的項(xiàng)目需要導(dǎo)出表的頁面非常的多,想來這個(gè)也是我們常用的功能了,現(xiàn)在我可以很熟練的導(dǎo)出了,但是記得當(dāng)時(shí)自己第一次導(dǎo)出時(shí)還是繞了一些彎路的,那么現(xiàn)在我就來記錄下我這次用框架項(xiàng)目下的導(dǎo)出其實(shí)在不同的框架下的導(dǎo)出原理都是差不多的前端導(dǎo)出導(dǎo)


我發(fā)現(xiàn)最近的項(xiàng)目需要導(dǎo)出Excel表的頁面非常的多,想來這個(gè)也是我們常用的功能了,現(xiàn)在我可以很熟練的導(dǎo)出了,但是記得當(dāng)時(shí)自己第一次導(dǎo)出時(shí)還是繞了一些彎路的,那么現(xiàn)在我就來記錄下我這次用exshop框架項(xiàng)目下的導(dǎo)出(其實(shí)在不同的框架下Excel的導(dǎo)出原理都是差不多的)


前端
 導(dǎo)出

控制器
//    導(dǎo)出數(shù)據(jù)
    public function export() {
        $result = $this->_oaOrderModel->getAllOrderListForManager($this->store_id, $orderSn=null, $buyer_id=null, $buyer_name=null, $consignee=null, $phone=null, $company_name=null, $status=null, $s_time=null, $e_time=null, $page=null, $listRows=null, $execl=true); //這個(gè)是獲得數(shù)據(jù)的代碼-model里
        $orderList = $result["orderList"];
        if (!empty($orderList)) {
            $j = 1;
            $stmt = array();
            foreach ($orderList as $val) {
                $stmt[$j]["網(wǎng)站ID"] = $val["store_id"];
                $stmt[$j]["訂單信息"] = $val["order_sn"];
                $stmt[$j]["商品信息"] = $val["inventory_sn_count_chinese"];
                $stmt[$j]["工藝選擇"] = $val["craft_count_chinese"];
                $stmt[$j]["商品總數(shù)量"] = $val["real_goods_total_count"];
                $stmt[$j]["提交日期"] = date("Y-m-d H:i:s",$val["add_time"]);
                $stmt[$j]["客戶名稱"] = $val["company_name"];
                $stmt[$j]["聯(lián)系人"] = $val["consignee"];
                $stmt[$j]["聯(lián)系方式"] = $val["phone_mob"];
                $stmt[$j]["訂單完成率"] = $val["percentage_complete"];
                $stmt[$j]["訂單狀態(tài)"] = $val["statusChinese"];
                $j++;
            }
            $current_path = dirname(__FILE__);
            $home_path = dirname($current_path);
            require_once ROOT_PATH . "/includes/libraries/PHPExcel.php";
            require_once ROOT_PATH . "/includes/libraries/PHPExcel/IOFactory.php";
            $objPHPExcel = new PHPExcel(); //這個(gè)方法自己下載放到公共方法里
            $objPHPExcel->getProperties()->setCreator("Maarten Balliauw")
                ->setLastModifiedBy("Maarten Balliauw")
                ->setTitle("Office 2007 XLSX Test Document")
                ->setSubject("Office 2007 XLSX Test Document")
                ->setDescription("Document for Office 2007 XLSX, generated using PHP classes.")
                ->setKeywords("office 2007 openxml php")
                ->setCategory("Test result file");

            // 行高
            for ($i = 2; $i <= count($stmt); $i++) {
                $objPHPExcel->getActiveSheet()->getRowDimension($i)->setRowHeight(22);
            }
            foreach ($stmt as $fid => $fval) {
                if ($fid == 1) {
                    $key = 0;
                    foreach ($fval as $title => $first) {
                        //如果一級(jí)標(biāo)題
                        $objPHPExcel->getActiveSheet()->setCellValue(chr($key + 65) . "1", $title);
                        $objPHPExcel->getActiveSheet()->getStyle(chr($key + 65) . "1")->getFont()->setBold(true);       // 加粗
                        $key ++;
                    }
                }
                $cid = 0;
                $row_id = $fid + 1;
                foreach ($fval as $cval) {
                    $objPHPExcel->getActiveSheet()->setCellValue(chr($cid + 65) . (string) ($row_id), $cval);
                    $cid++;
                }
            }
            $objPHPExcel->setActiveSheetIndex(0);
            $objPHPExcel->getActiveSheet()->setTitle("Excel表");
            $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, "Excel5");
            //$objWriter->save("訂單列表詳細(xì).xls");
            //輸出到瀏覽器
            header("Content-Type: application/force-download");
            header("Content-Type: application/octet-stream");
            header("Content-Type: application/download");
            header("Content-Disposition:inline;filename="訂單列表.xls"");
            header("Content-Transfer-Encoding: binary");
            header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
            header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
            header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
            header("Pragma: no-cache");
            $objWriter->save("php://output");
        }
    }
    
成果圖


心得

有時(shí)候遇到這些問題可以多思考,多看看它的原理,原理理解了下次做其它的也是會(huì)的,但最重要的是要懂得做記錄,我們的記憶并沒有想象的那么好

注:文章來源雨中笑記錄實(shí)習(xí)期遇到的問題與心得,轉(zhuǎn)載請(qǐng)申明原文

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/29334.html

相關(guān)文章

  • PHP導(dǎo)出數(shù)據(jù)表格實(shí)例

    摘要:我發(fā)現(xiàn)最近的項(xiàng)目需要導(dǎo)出表的頁面非常的多,想來這個(gè)也是我們常用的功能了,現(xiàn)在我可以很熟練的導(dǎo)出了,但是記得當(dāng)時(shí)自己第一次導(dǎo)出時(shí)還是繞了一些彎路的,那么現(xiàn)在我就來記錄下我這次用框架項(xiàng)目下的導(dǎo)出其實(shí)在不同的框架下的導(dǎo)出原理都是差不多的前端導(dǎo)出導(dǎo) 我發(fā)現(xiàn)最近的項(xiàng)目需要導(dǎo)出Excel表的頁面非常的多,想來這個(gè)也是我們常用的功能了,現(xiàn)在我可以很熟練的導(dǎo)出了,但是記得當(dāng)時(shí)自己第一次導(dǎo)出時(shí)還是繞了...

    guyan0319 評(píng)論0 收藏0
  • PHP導(dǎo)出數(shù)據(jù)表格實(shí)例

    摘要:我發(fā)現(xiàn)最近的項(xiàng)目需要導(dǎo)出表的頁面非常的多,想來這個(gè)也是我們常用的功能了,現(xiàn)在我可以很熟練的導(dǎo)出了,但是記得當(dāng)時(shí)自己第一次導(dǎo)出時(shí)還是繞了一些彎路的,那么現(xiàn)在我就來記錄下我這次用框架項(xiàng)目下的導(dǎo)出其實(shí)在不同的框架下的導(dǎo)出原理都是差不多的前端導(dǎo)出導(dǎo) 我發(fā)現(xiàn)最近的項(xiàng)目需要導(dǎo)出Excel表的頁面非常的多,想來這個(gè)也是我們常用的功能了,現(xiàn)在我可以很熟練的導(dǎo)出了,但是記得當(dāng)時(shí)自己第一次導(dǎo)出時(shí)還是繞了...

    Anonymous1 評(píng)論0 收藏0
  • 一個(gè)php文件就可以把數(shù)據(jù)數(shù)據(jù)導(dǎo)出Excel表格

    摘要:數(shù)據(jù)庫地址數(shù)據(jù)庫名數(shù)據(jù)庫賬號(hào)數(shù)據(jù)庫密碼需要導(dǎo)出的數(shù)據(jù)庫表名文件名自己改,默認(rèn)連接數(shù)據(jù)庫失敗單元格單元格單元格單元格下面改成你自己數(shù)據(jù)庫對(duì)應(yīng)的字段輸出字段的數(shù)據(jù)到單元格下面改成你自己數(shù)據(jù)庫對(duì)應(yīng)的字段然后訪問就可以彈出表格下載了。 數(shù)據(jù)庫內(nèi)容太多,復(fù)制粘貼太麻煩?那就用代碼實(shí)現(xiàn)把,把代碼寫好了,導(dǎo)出還不容易嗎,訪問即可導(dǎo)出。 excel.php 然后訪問excel.php就可以彈出表格下...

    Charlie_Jade 評(píng)論0 收藏0
  • 一個(gè)php文件就可以把數(shù)據(jù)數(shù)據(jù)導(dǎo)出Excel表格

    摘要:數(shù)據(jù)庫地址數(shù)據(jù)庫名數(shù)據(jù)庫賬號(hào)數(shù)據(jù)庫密碼需要導(dǎo)出的數(shù)據(jù)庫表名文件名自己改,默認(rèn)連接數(shù)據(jù)庫失敗單元格單元格單元格單元格下面改成你自己數(shù)據(jù)庫對(duì)應(yīng)的字段輸出字段的數(shù)據(jù)到單元格下面改成你自己數(shù)據(jù)庫對(duì)應(yīng)的字段然后訪問就可以彈出表格下載了。 數(shù)據(jù)庫內(nèi)容太多,復(fù)制粘貼太麻煩?那就用代碼實(shí)現(xiàn)把,把代碼寫好了,導(dǎo)出還不容易嗎,訪問即可導(dǎo)出。 excel.php 然后訪問excel.php就可以彈出表格下...

    superw 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

Brenner

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<