လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Excel တင်ပို့မှုကိုတင်ရန် header () ကိုသုံးပါ။ MIME အမျိုးအစားနှင့် encoding key points

Excel တင်ပို့မှုကိုတင်ရန် header () ကိုသုံးပါ။ MIME အမျိုးအစားနှင့် encoding key points

M66 2025-05-28

PHP တွင်ကျွန်ုပ်တို့သည်သုံးစွဲသူများအတွက် Excel ဖိုင်ကိုထုတ်လုပ်လိုပါကအသုံးပြုသောနည်းလမ်းမှာ HTTP header ကိုသတ်မှတ်ရန် header () function ကိုအသုံးပြုရန်ဖြစ်သည်။ ဤဆောင်းပါးသည် ခေါင်းစီးကို အသုံးပြု. Excel တင်ပို့မှုကိုမည်သို့ပြုလုပ်ရမည်ကိုမိတ်ဆက်ပေးပြီး MIME အမျိုးအစားများနှင့်ဇာတ်ကောင် encoding အကြောင်းမှတ်စုများကိုလည်းရှင်းပြပါလိမ့်မည်။

1 ။ အဘယ်ကြောင့် header ကိုသုံးတာလဲ။

Http Http Header Information ကိုပေးပို့ရန်အသုံးပြုသော Hepp () header () function တစ်ခုဖြစ်ပါတယ်။ လက်ခံရရှိသည့်ခေါင်းစဉ်များအပေါ် အခြေခံ. ပြန်လာသောအကြောင်းအရာများကိုမည်သို့လုပ်ဆောင်ရမည်ကို browser ကဆုံးဖြတ်သည်။ ဥပမာအားဖြင့်:

  • Content-type အမျိုးအစားသည် browser ကိုမည်သည့်ဖိုင်အမျိုးအစားကိုဖော်ပြသည်။

  • Content-Desefulce သည် download လုပ်သည့်အခါဖိုင်အမည်ကိုဒေါင်းလုပ်ဆွဲရန်သို့မဟုတ်ဖိုင်အမည်ကိုသတ်မှတ်ရန်တွန်းအားပေးနိုင်သည်။

အကယ်. ကျွန်ုပ်တို့သည် browser ကို PHP မှ Data output ကို Excel ဖိုင်တစ်ခုအဖြစ်လုပ်ဆောင်လိုပါကဤခေါင်းစီးများကိုသတ်မှတ်ရမည်။

2 ။ အခြေခံ header () ချိန်ညှိချက်များ

Excel ဖိုင်များထုတ်လုပ်ရန်အတွက်အခြေခံဥပမာတစ်ခု ( algacy.xls format) ကိုထုတ်လုပ်ရန်အတွက်အခြေခံဥပမာတစ်ခုဖြစ်သည်။

 <?php
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=\"export.xls\"");
header("Cache-Control: max-age=0");

echo "နံပါတ်စဥ်\tနံမယ်\tနိုင်ပြီ\n";
echo "1\tZhang San\t90\n";
echo "2\tli si\t85\n";
?>

ဥပမာ -

  • Content-type: လျှောက်လွှာ / vnd.ms-Excel
    ၎င်းသည် Excel ဖိုင်တစ်ခုဖြစ်သော browser ကိုပြောပါ။

  • အကြောင်းအရာ - သဘောထား - ပူးတွဲမှု, filename = "Export.xls"
    ဒေါင်းလုပ်လုပ်သည့်အချိန်တွင်ဖိုင်အမည်ကိုသတ်မှတ်သည်။

  • cache-control: max-ago = 0
    cache ကိုရှောင်ကြဉ်ပါ။

မှတ်စု: ဤနည်းလမ်းသည်ရှင်းလင်းသောစာသားသို့မဟုတ် HTML ပုံစံများအတွက် Excel ကိုအသိအမှတ်ပြုသည့် HTML ပုံစံများနှင့်မှန်ကန်သော Excel Forms format များကိုတိုက်ရိုက်ထုတ်လုပ်ခြင်းမရှိသေးပါ။

3 ။ MIME အမျိုးအစားရွေးချယ်မှုအကြောင်း

ကွဲပြားခြားနားသောပို့ကုန်ပုံစံများနှင့်ကွဲပြားခြားနားသော MIME အမျိုးအစားများ။ အများအားဖြင့်အသုံးပြုသည် -

  • လျှောက်လွှာ / vnd.ms-Excel - ရိုးရာ .xls ဖိုင်။

  • application / vnd.openxmlformats-offereded.spreads.spreadml.sheet - Excel 2007 နှင့်အထက် .xlsx ဖိုင်များအထက်။

  • လျှောက်လွှာ / CSV သို့မဟုတ် Text / CSV - CSV ဖိုင်။

အကယ်. သင်သည် .xlsx ဖိုင်ကိုထုတ်ပေးပါကသင်လည်း phpspreadsheet ကဲ့သို့သော phpspreadsheet ကဲ့သို့သောစာကြည့်တိုက်များလည်းအသုံးပြုရန်လိုအပ်သည်။

4 ။ ဇာတ်ကောင် encoding ထောင်ချောက်

အထူးသဖြင့်တရုတ်များအပါအ 0 င် Excel ဖိုင်များကိုထုတ်လုပ်သည့်အခါ coding ပြ issues နာများမှာဘုံဖြစ်သည်။

အမြဲမေးလေ့ရှိသောမေးခွန်းများ:

  • Excel ဖိုင်ကိုဖွင့်ပြီးနောက်တရုတ်စာသားသည် garbled code ကိုပြသသည်။

  • အထူးအက္ခရာများကိုမှားယွင်းစွာခွဲခြမ်းစိတ်ဖြာကြသည်။

ဖြေရှင်းချက် -

  1. Output ကို GB2312 သို့မဟုတ် UTF-16LE ကဲ့သို့သော Excel မှအသိအမှတ်ပြုထားသော encoding encoding encoding ကိုသုံးရန် iconv () သို့မဟုတ် mb_converterverv_encoding ကိုသုံးပါ။

  2. CSV ဖိုင်တစ်ခုတွင် UTF-8 encoding ကို Exceling Mearning ကိုအစတွင်အစတွင်အစတွင်အစတွင် စတွင်အစရှိရမည်။

ဥပမာ (OMF-8 CSV Bom):

 <?php
header("Content-Type: text/csv; charset=utf-8");
header("Content-Disposition: attachment; filename=\"export.csv\"");
header("Cache-Control: max-age=0");

// ထုတ်လုပ်ခြင်း BOM
echo "\xEF\xBB\xBF";

echo "နံပါတ်စဥ်,နံမယ်,နိုင်ပြီ\n";
echo "1,Zhang San,90\n";
echo "2,li si,85\n";
?>

5 ။ ပြီးပြည့်စုံသောဥပမာ - Excel 2007+ ဖိုင်များကိုထုတ်လုပ်ပါ

.xlsx ထုတ်လုပ်ရန် .xlsx ကိုများသောအားဖြင့် phpspradereet ကဲ့သို့သောစာကြည့်တိုက်များအသုံးပြုရန်လိုအပ်လေ့ရှိပြီး Output ကိုမှန်ကန်စွာသတ်မှတ်ရန်လိုအပ်သည်။

 <?php
require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'နံပါတ်စဥ်');
$sheet->setCellValue('B1', 'နံမယ်');
$sheet->setCellValue('C1', 'နိုင်ပြီ');
$sheet->setCellValue('A2', '1');
$sheet->setCellValue('B2', 'Zhang San');
$sheet->setCellValue('C2', '90');

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment; filename="export.xlsx"');
header('Cache-Control: max-age=0');

$writer = new Xlsx($spreadsheet);
$writer->save('php://output');
?>

သတိပြုရန်:

  • သင့်ကုဒ်တွင်ချိတ်ဆက်မှုသို့မဟုတ်ရည်ညွှန်းချက်ရှိလျှင်၎င်းကို https://m66.net/xxx ကဲ့သို့သော domain name ဖြင့်အစားထိုးရန်သေချာပါစေ။

  • ဥပမာအားဖြင့် Excel တွင် hyperlink တစ်ခုတင်ရန်

 $sheet->setCellValue('D2', '=HYPERLINK("https://m66.net/page", "အသေးစိတ်ကိုစစ်ဆေးပါ")');

6 ။ အကျဉ်းချုပ်

အရေးအကြီးဆုံးအရာက Excel ဖိုင်များကိုတင်ပို့ရန် header () ကို အသုံးပြုရန်ဖြစ်သည်။

  • အကြောင်းအရာ - အမျိုးအစား နှင့် အကြောင်းအရာ - သဘောထားကို မှန်ကန်စွာသတ်မှတ်ပါ။

  • ဇာတ်ကောင်ကိုကောင်းစွာ encoding ကိုကိုင်တွယ်ပါ။

  • ရှုပ်ထွေးသောပုံစံများ (ဥပမာ .xlsx ) ကိုအထူးစာကြည့်တိုက်များ အသုံးပြု. ထုတ်လုပ်ရန်လိုအပ်သည်။

ဤချိန်ညှိချက်များသည်သင်၏ PHP အစီအစဉ်ကို Excel Data ပို့ကုန်လုပ်ဆောင်မှုကိုအလွယ်တကူအကောင်အထည်ဖော်ရန်ခွင့်ပြုသည်။ ဤဆောင်းပါးသည်အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်လမ်းလွှဲများကိုရှောင်ရှားရန်သင်မျှော်လင့်ပါသည်။