cari

Rumah  >  Soal Jawab  >  teks badan

PHPExcel mengeksport xls aksara bercelaru

Apabila menggunakan kaedah simpan PHPExcel,

// Simpan sebagai fail xls, tetapi ini hanya disimpan ke pelayan dan perlu dimuat turun secara manual secara setempat.
$writer->save('product list.xls');

Muat turun terus:

 if ($this->fileVersion == 'Excel5') {
            header('Content-Type: application/vnd.ms-excel'); // Keluarkan fail dalam format xls
            header('Content-Disposition: attachment;filename="' . $config['fileName'] . '.xls"'); //Beritahu pelayar nama fail output
        } lain {
            header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); // Fail keluaran dalam format xlsx
            header('Content-Disposition: attachment;filename="' . $config['fileName'] . '.xlsx"'); //Beritahu pelayar nama fail output
        }

        // Jika anda berkhidmat untuk IE 9, maka perkara berikut mungkin diperlukan
        header('Cache-Control: max-age=1');

        // Jika anda berkhidmat kepada IE melalui SSL, maka perkara berikut mungkin diperlukan
        header('Tamat tempoh: Isn, 26 Jul 1997 05:00:00 GMT'); // Tarikh pada masa lalu
        header('Terakhir Diubah Suai: ' . gmdate('D, d M Y H:i:s') . ' GMT'); // sentiasa diubah suai
        header('Cache-Control: cache, must-revalidate'); // HTTP/1.1
        header('Pragma: awam'); // HTTP/1.0

        $writer->save('php://output');

Fail xls yang dieksport boleh dimuat turun terus melalui php://output, dan fail xls tidak akan dijana pada pelayan;
Walau bagaimanapun, apabila memuat turun, ralat dilaporkan secara langsung dalam penyemak imbas alat pembangun muncul dalam rangkaian dan tidak mencetuskan operasi muat turun fail

< /p>

Saya tidak pernah mengetahui bagaimana kod bercelaru ini disebabkan Jika ia berada di hadapan pengepala, print_r($writer exit; tidak melihat objek $writer Bercelaru

Saya sangat keliru tentang soalan ini

ringa_leeringa_lee2753 hari yang lalu780

membalas semua(2)saya akan balas

  • 習慣沉默

    習慣沉默2017-05-16 13:05:35

    Masalah telah diselesaikan Kaedah ini boleh memuat turun terus fail yang dieksport, tetapi Ajax tidak boleh digunakan

    balas
    0
  • PHP中文网

    PHP中文网2017-05-16 13:05:35

    header('Content-Type: application/vnd.ms-excel');改为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');

    balas
    0
  • Batalbalas