scotthuangzl / yii2-export2excel
A behavior to export yii2 query to excel and auto download
Installs: 30 877
Dependents: 1
Suggesters: 0
Security: 0
Stars: 7
Watchers: 2
Forks: 4
Type:yii2-extension
Requires
This package is not auto-updated.
Last update: 2024-11-13 10:14:12 UTC
README
A behavior to export Yii2 query to excel and auto download
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require scotthuangzl/yii2-export2excel "dev-master"
or add
"scotthuangzl/yii2-export2excel": "dev-master"
to the require section of your composer.json
file.
Usage
In any of your controller:
use scotthuangzl\export2excel\Export2ExcelBehavior; public function behaviors() { //above is your existing behaviors //new add export2excel behaviors 'export2excel' => [ 'class' => Export2ExcelBehavior::className(), // 'prefixStr' => yii::$app->user->identity->username, // 'suffixStr' => date('Ymd-His'), ], } public function actions() { return [ 'error' => [ 'class' => 'yii\web\ErrorAction', ], 'captcha' => [ 'class' => 'yii\captcha\CaptchaAction', 'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null, ], //new add download action 'download' => [ 'class' => 'scotthuangzl\export2excel\DownloadAction', ], ]; } //In any of your actions: public function actionYoursAnyAction(){ //... your other code //test export2excel behavior $excel_data = Export2ExcelBehavior::excelDataFormat(EOPStatus::find()->asArray()->all()); $excel_title = $excel_data['excel_title']; $excel_ceils = $excel_data['excel_ceils']; $excel_content = array( array( 'sheet_name' => 'EOPStatus', 'sheet_title' => $excel_title, 'ceils' => $excel_ceils, 'freezePane' => 'B2', 'headerColor' => Export2ExcelBehavior::getCssClass("header"), 'headerColumnCssClass' => array( 'id' => Export2ExcelBehavior::getCssClass('blue'), 'Status_Description' => Export2ExcelBehavior::getCssClass('grey'), ), //define each column's cssClass for header line only. You can set as blank. 'oddCssClass' => Export2ExcelBehavior::getCssClass("odd"), 'evenCssClass' => Export2ExcelBehavior::getCssClass("even"), ), array( 'sheet_name' => 'Important Note', 'sheet_title' => array("Important Note For Region Template"), 'ceils' => array( array("1.Column Platform,Part,Region must need update.") , array("2.Column Regional_Status only as Regional_Green,Regional_Yellow,Regional_Red,Regional_Ready.") , array("3.Column RTS_Date, Master_Desc, Functional_Desc, Commodity, Part_Status are only for your reference, will not be uploaded into NPI tracking system.")) ), ); $excel_file = "testYii2Save2Excel"; $this->export2excel($excel_content, $excel_file); //... your other code }
Sample picture
Please find from: Yii2 Export2Excel Extension.