- 不在 server 儲存檔案,直接下載匯出的 Excel
$filename = date("Y-m-d") . ".xls"; header('Content-type: application/vnd.ms-excel'); header('Content-Disposition: attachment; filename="' . $filename . '"'); //...(略)... $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); // 將資料儲存到 php://output
- 和其他的 autoload 設定相沖,產生找不到 class 的錯誤訊息
// 自己設定的 autoload function myAutoload($class_name) { require_once SITE_MODEL . "/{$class_name}.php"; } spl_autoload_register('myAutoload'); //...(略)... require_once 'PHPExcel.php'; require_once SITE_COMMON . '/PHPExcel.php'; // 發生錯誤 require_once(D:\Apache(x86)\htdocs\PHPExcel_Shared_String.class.php): failed to open stream: No such file or directory // 和 myAutoload 相沖了
=> 將其他的 autoload 設定先移除
// 自己設定的 autoload function myAutoload($class_name) { require_once SITE_MODEL . "/{$class_name}.php"; } spl_autoload_register('myAutoload'); //...(略)... #var_dump(spl_autoload_functions()); // 查看目前有的 autoload 設定 spl_autoload_unregister('myAutoload'); // 移除自己設定的 autoload require_once SITE_COMMON . '/PHPExcel.php'; // 將相沖的autoload設定暫時移除,即可正常使用PHPExcel
- 設定欄位背景色
//設定欄位背景色(方法1) $objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID); $objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->setRGB('CCCCCC'); //設定欄位背景色(方法1) $objPHPExcel->getActiveSheet()->getStyle('A1')->applyFromArray( array( 'fill' => array( 'type' => PHPExcel_Style_Fill::FILL_SOLID, 'color' => array('rgb' => 'CCCCCC') ) ) );
參考:
http://stackoverflow.com/questions/8566196/phpexcel-to-download
http://www.php.net/manual/en/function.spl-autoload-register.php
http://www.php.net/manual/en/function.spl-autoload-functions.php
http://www.php.net/manual/en/function.spl-autoload-unregister.php
Yii引入PHPExcel修改其自動加載方法
PHP 輸出 Excel ,使用PHPExcel
Set Background cell color in PHPExcel
沒有留言:
張貼留言