如何在laravel中使用maatwebsite包设计Excel工作表

时间:2018-01-14 15:46:35

标签: php excel laravel maatwebsite-excel

我已使用maatwebsite中的laravel包导出了Excel文件。但是当我导出它时,它会显示原始数据,我如何设计这个excel以便用它的标题分别显示每个数据。

这是我导出的数据图像链接。 http://prntscr.com/i08up8

这是excel导出代码。

 public function export()
{
  $items = DB::table('userinformations')
        ->join('users', 'userinformations.user_id', '=', 'users.id')
        ->select('userinformations.fname','userinformations.lname','users.email')
        ->where('userinformations.payment_status',1)
        ->get();
    $items=array($items);
  Excel::create('items', function($excel) use($items) {
      $excel->sheet('ExportFile', function($sheet) use($items) {
          $sheet->fromArray($items);
      });
  })->export('csv');
}

1 个答案:

答案 0 :(得分:0)

试试这个,希望它会起作用。

$data = DB::table('userinformations')
        ->join('users', 'userinformations.user_id', '=', 'users.id')
        ->join('careers','careers.user_id','=','users.id')
        ->select('userinformations.*','users.*','careers.org_name','careers.post')
        ->where('userinformations.payment_status',1)
        ->groupBy('careers.user_id')
        ->get();

    $items=array();
    foreach ($data as $key=>$d) {
        $items[$key]['#']=++$key;
        $items[$key]['MemberShip ID']=$d->member_id;
  $items[$key]['MemberShip Type']=($d->member_type==1?'Student': ($d->member_type==2 ? 'General':($d->member_type==3?'Associate':($d->member_type==4?'Fellow':'N/A'))));
         $items[$key]['Name']=$d->fname.' '.$d->lname;
         $items[$key]['Organization']=$d->org_name;
         $items[$key]['Designation']=$d->post;
         $items[$key]['Mobile']='+880'.$d->mbl_no;
         $items[$key]['Email']=$d->email;
         $items[$key]['Registration Date']=$d->reg_date;
         $items[$key]['Amount']=$d->fee;
         $items[$key]['Pay Type']=($d->pay_type==1?'Cash': ($d->pay_type==2 ? 'Cheque':($d->pay_type==3?'Bank Deposit':($d->pay_type==4?'Aamar Pay':'N/A'))));
         $items[$key]['Payment Information']=($d->pay_type==1?('MRN: '.$d->mrn.' '.'Date: '.$d->paydate): ($d->pay_type==2 ?('Issue Date: '.$d->isdate.' '.'Bank: '.$d->bname.' '.'Cheque: '.$d->cheq_no) :($d->pay_type==3?('Slip No: '.$d->slip_no):($d->pay_type==4?'Aamar Pay':'N/A'))));
         $items[$key]['Payment Status']='Paid';
         $items[$key]['Expire Date']='31-12-2018';
    }


  Excel::create('Member Paid List', function($excel) use($items) {

     $excel->sheet('Paid List', function($sheet) use($items){
         $sheet->fromArray($items);
    });

  })->export('xls');