Rumah  >  Soal Jawab  >  teks badan

phpExcel mengeksport secara normal dalam persekitaran wamp luar talian Kod yang sama yang dieksport ke Linux dalam talian tidak boleh dibuka Selepas mengubah suai akhiran fail kepada .xls, ia menjadi kacau.

Saya menggunakan phpExcel untuk mengeksport jadual keahlian ke penyemak imbas Ujian luar talian adalah normal, ia boleh dieksport, dan tiada ralat pengekodan

1 Jadual dieksport secara normal

TIM图片20171110094544.png

2 masalah dieksport dalam talian

TIM图片20171110094125.png

3, selepas mengubah suai akhiran, aksara bercelaru dipaparkan

TIM图片20171110094209.png

Kod kini dipos.

kes 'test':

$data1 = MySql:"telefon_fetchAname ,car_id,regtime,endtime,sale, re_tel,type FROM `pw_member` where type=1");

$data2 = MySql::fetchAll("SELECT real_name,telefon,car_id,regtime,endtime,sale,re_tel,type DARI `ahli_pw` di mana jenis=2" );

$data3 = MySql::fetchAll("PILIH nama_sebenar,telefon,id_kereta,masa reg,masa tamat,jualan,tel semula,taip DARI `ahli_pw` di mana jenis=3");

//3 jenis ahli

foreach($data1 as $key=>&$val){

if($val['type']==1){

$val[' type']='ahli biasa';

}

if($val['regtime']>58001){

$val['regtime']=date('Y-m-d',$val[' regtime']);

}

if($val['endtime']>58001){

$val['endtime']=date('Y-m-d',$val['endtime']) ;

}

}

foreach($data2 sebagai $key=>&$val){

if($val['type']==2){

type']='ahli VIP';

}

if($val['regtime']>58001){

$val['regtime']=date('Y-m-d',$val[' regtime']);

}

if($val['endtime']>58001){

$val['endtime']=date('Y-m-d',$val['endtime']) ;

}

}

foreach($data3 sebagai $key=>&$val){

if($val['type']==3){

type']='Gold Member' ;

}

if($val['regtime']>58001){

$val['regtime']=date('Y-m-d',$val[' regtime']);

}

if($val['endtime']>58001){

$val['endtime']=date('Y-m-d',$val['endtime']) ;

}

}

// Cxt::dump($data1);

$a=array(

0=>'Nama sebenar',

1=>

2=>'Nombor plat lesen ',

3=>'Tarikh pendaftaran',

4=>'Masa tamat tempoh',

5=>'Pengesyoran',

=>'6 Nombor telefon pengesyor',

7=>'Jenis Ahli',

);

array_unshift($data1,$a); //Tambah pengepala

array_unshift($data2,$a); //Tambah tajuk

( $data_unshift ,$a); //Tambah pengepala

$data[1]=$data1;

$data[2]=$data2;

$data[3]=$data3;

memerlukan(' ./include /PHPExcel/PHPExcel.php');

// memerlukan dirname(__FILE__).'/PHPExcel/PHPExcel.php';

$objPHPExcel = PHPExcel();//Segera kelas phpexcel

/ / Cxt: :dump($objPHPExcel); helaian terbina dalam baharu

$objPHPExcel->setActiveSheetIndex($i-1);//Tetapkan helaian yang baru dibuat sebagai helaian yang sedang aktif

}

$objSheet=$objPHPExcel->getActiveSheet(); //Dapatkan helaian aktif semasa

$objSheet->setTitle($i.'Ahli');

$objSheet->fromArray($data[$i]);

}

$ obj =PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007');

$name=date('Y-m-d',time()).masa();

$name='member'.$name.' . xlsx';

// $objWriter->save($name);//Simpan ke pelayan

// header('Content-Type: application/vnd.ms-excel');//Beritahu pelayar Fail 2003 akan menjadi output

header('Content-Type: application/vnd.ms-excel; charset=UTF-8');

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet ' );

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; charset=UTF-8');

header('Content-Disposition: attachment;filename='."$name " );//Beritahu penyemak imbas nama fail output

pengepala('Cache-Control: max-age=0');

$objWriter->save("php://output");

Break;

Jika ada yang menemui masalah seperti ini, sila beri saya panduan.

薛定谔的猫薛定谔的猫2558 hari yang lalu1480

membalas semua(0)saya akan balas

Tiada jawapan
  • Batalbalas