phpexcel 匯出 顏色有關問題

來源:互聯網
上載者:User
phpexcel 匯出 顏色問題
用phpexcel做匯出的excel的顏色怎麼和網頁中的顏色顯示不一致呢?
PHP code
query("select * from oa_event_sales");while($a = $db->fetch_array($q)){    $list[] = $a;}$ce = new creatExcelDb();$re = $ce->_run($list,'served_time','client_status','oid');$all_nums=0;$num=array();foreach($re as $k=>$v){    $num[$k]=count($re[$k]);    $all_nums+=count($re[$k]);    }$jq = array();$title1 = client_status;$title2 = fin_confirm;$title3 = oid;//去除數組中相同的值foreach($re as $key => $val){    if(true){        foreach($val as $key2 => $val2){            if(!in_array($key2,$jq)){                $jq[] = $key2;            }        }        }}$arr_keys=array();foreach($re as $k=>$v){    foreach($v as $k2=>$v2){        $arr_keys[]=$k2;        }    } $c=array_count_values($arr_keys);//++===++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++    // 建立一個處理對象執行個體    $objExcel = new PHPExcel();    // 建立檔案格式寫入對象執行個體, uncomment    $objWriter = new PHPExcel_Writer_Excel5($objExcel);    //設定文檔基本屬性/**似乎一般情況下用不到**/    $objProps = $objExcel->getProperties();    $objProps->setCreator("楊本木");    $objProps->setLastModifiedBy("楊本木");    $objProps->setTitle("楊本木");    $objProps->setSubject("楊本木");    $objProps->setDescription("楊本木");    $objProps->setKeywords("楊本木");    $objProps->setCategory("楊本木");    //*************************************           //設定當前的sheet索引,用於後續的內容操作。           //一般只有在使用多個sheet的時候才需要顯示調用。           //預設情況下,PHPExcel會自動建立第一個sheet被設定SheetIndex=0           $objExcel->setActiveSheetIndex(0);           $objActSheet = $objExcel->getActiveSheet();              //設定當前活動sheet的名稱           $objActSheet->setTitle('當前sheetname');       //設定寬度,這個值和EXCEL裡的不同,不知道是什麼單位,略小於EXCEL中的寬度       //$objActSheet->getColumnDimension('A')->setWidth(20);     //$objActSheet->getRowDimension(1)->setRowHeight(30);  //高度    //設定儲存格的值         $objActSheet->setCellValue('A1', '總標題顯示');     /*    //設定樣式       $objStyleA1 = $objActSheet->getStyle('A1');           $objStyleA1->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);       $objFontA1 = $objStyleA1->getFont();           $objFontA1->setName('宋體');           $objFontA1->setSize(18);         $objFontA1->setBold(true);     //設定列置中對齊       $objActSheet->getStyle('D')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);    */   //============first===================================    $benmu=1;    $objActSheet->setCellValue('A1', '列標籤\欄標籤');    foreach($jq as $k=>$v){    $objActSheet->setCellValue(get_excel_row($benmu).'1', $v);    $benmu+=1;    }    $objActSheet->setCellValue(get_excel_row($benmu).'1', '總計');    //設定寬度       for($i=0;$i<$benmu+1;$i++){         $objActSheet->getColumnDimension(get_excel_row($i))->setWidth(20);         //寬度         $objActSheet->getStyle(get_excel_row($i)."1")->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);         $objActSheet->getStyle(get_excel_row($i))->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);         //顏色         $objActSheet->getStyle(get_excel_row($i)."1")->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);         $objActSheet->getStyle(get_excel_row($i)."1")->getFill()->getStartColor()->setARGB(COLOR1);       }    //==============content=================    $y=2;    foreach($re as $k1=>$v1){    //$k1全部放在A2。。。。後面,k1為電話號碼、v1為person-》數字     $objActSheet->setCellValue('A'.$y, $k1);       //顏色     $objActSheet->getStyle('A'.$y)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);      $objActSheet->getStyle('A'.$y)->getFill()->getStartColor()->setARGB(COLOR1);       foreach($jq as $k2=>$v2){     //k2是0,v2是person        foreach($v1 as $k3=>$v3){    //$k3為person,$v3是要的值            if($k3==$v2){              //$objActSheet->setCellValue(get_excel_row("1"+$k2).$y,$v1[$k3]);$objActSheet->setCellValueExplicit(get_excel_row("1"+$k2).$y,$v1[$k3],PHPExcel_Cell_DataType::TYPE_STRING);            }         }       }      $objActSheet->setCellValue(get_excel_row("1"+count($jq)).$y, $num[$k1]);      $y+=1;    }    //=================last==========    $objActSheet->setCellValue("A".$y,"總計");    //顏色    $objActSheet->getStyle("A".$y)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);    $objActSheet->getStyle("A".$y)->getFill()->getStartColor()->setARGB(COLOR1);    foreach($jq as $k=>$v){    //k為person     $objActSheet->setCellValue(get_excel_row("1"+$k).$y,$c[$v]);     //顏色     $objActSheet->getStyle(get_excel_row("1"+$k).$y)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);      $objActSheet->getStyle(get_excel_row("1"+$k).$y)->getFill()->getStartColor()->setARGB(COLOR1);    }    $objActSheet->setCellValue(get_excel_row("1"+count($jq)).$y,$all_nums);     //顏色    $objActSheet->getStyle(get_excel_row("1"+count($jq)).$y)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);    $objActSheet->getStyle(get_excel_row("1"+count($jq)).$y)->getFill()->getStartColor()->setARGB(COLOR1);    //===============================    //輸出內容           $outputFileName =time().".xls";                      header("Pragma: public");         header("Expires: 0");         header("Cache-Control:must-revalidate, post-check=0, pre-check=0");         header("Content-Type:application/force-download");       header("Content-Type:application/octet-stream");         header("Content-Type:application/download");         header('Content-Disposition:attachment;filename='.$outputFileName.'');         header("Content-Transfer-Encoding:binary");         $objWriter->save('php://output');    ?>
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.