Advertisement
fahmihilmansyah

untuk save file excel

Jul 29th, 2019
232
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.01 KB | None | 0 0
  1. public function actionHahahaha()
  2. {
  3.     $excel = new \PhpOffice\PhpSpreadsheet\Spreadsheet();
  4.     $excel->getProperties()
  5.         ->setCreator("Aplikasi Tes")
  6.         ->setLastModifiedBy("Aplikasi Tes")
  7.         ->setTitle("Report 123")
  8.         ->setKeywords("Report 123")
  9.         ->setCategory("Report 123");
  10.     $excel->getActiveSheet()->setTitle("Report 123");
  11.     $sheet = $excel->getActiveSheet();
  12.  
  13.     //Header
  14.     $header = [
  15.         'NIP',
  16.         'Nama',
  17.         'Jenis Jabfung',
  18.         'Unit Kerja',
  19.         'TMP Jabfung',
  20.         'Periode',
  21.         'Nilai Dupak'
  22.     ];
  23.     $sheet->fromArray($header, NULL, 'A1');
  24.  
  25.     //Isi
  26.     $data = [];
  27.     for($i=0; $i <= 10; $i++)
  28.         $data[$i] = [
  29.             '123',
  30.             'udin',
  31.             'jenis 1',
  32.             'unit 1',
  33.             '20-01-2019',
  34.             '20-01-2019',
  35.             10000
  36.         ];
  37.     }
  38.     $sheet->fromArray($data, NULL, 'A2');
  39.  
  40.     //Contoh Column Size
  41.     $sheet->getColumnDimension('A')->setWidth(28);
  42.     $sheet->getColumnDimension('B')->setWidth(35);
  43.     $sheet->getColumnDimension('C')->setWidth(35);
  44.     $sheet->getColumnDimension('D')->setWidth(35);
  45.     $sheet->getColumnDimension('E')->setWidth(20);
  46.     $sheet->getColumnDimension('F')->setWidth(20);
  47.     $sheet->getColumnDimension('G')->setWidth(15);
  48.  
  49.     $filename = "excel123-".time().".xlsx";
  50.  
  51.     //Versi Download
  52.     // header('Content-Type: application/vnd.ms-excel');
  53.     // header('Content-Disposition: attachment;filename="' . $filename . '"');
  54.     // header('Cache-Control: max-age=0');
  55.     // $writer = new \PhpOffice\PhpSpreadsheet\Writer\Xlsx($excel);
  56.     // $writer->save('php://output');
  57.  
  58.     //Versi HTML
  59.     // $writer = new \PhpOffice\PhpSpreadsheet\Writer\Html($excel);
  60.     // $writer->save('php://output');
  61.  
  62.     //Versi Save to File
  63.     $rootPath = Yii::getAlias('@app');
  64.     $path = $rootPath . "web/tmp/" .$filename;
  65.     $writer = new \PhpOffice\PhpSpreadsheet\Writer\Xlsx($excel);
  66.     $writer->save($path);
  67.  
  68.  
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement