PHP တွင်ကျွန်ုပ်တို့သည်သုံးစွဲသူများအတွက် Excel ဖိုင်ကိုထုတ်လုပ်လိုပါကအသုံးပြုသောနည်းလမ်းမှာ HTTP header ကိုသတ်မှတ်ရန် header () function ကိုအသုံးပြုရန်ဖြစ်သည်။ ဤဆောင်းပါးသည် ခေါင်းစီးကို အသုံးပြု. Excel တင်ပို့မှုကိုမည်သို့ပြုလုပ်ရမည်ကိုမိတ်ဆက်ပေးပြီး MIME အမျိုးအစားများနှင့်ဇာတ်ကောင် encoding အကြောင်းမှတ်စုများကိုလည်းရှင်းပြပါလိမ့်မည်။
Http Http Header Information ကိုပေးပို့ရန်အသုံးပြုသော Hepp () header () function တစ်ခုဖြစ်ပါတယ်။ လက်ခံရရှိသည့်ခေါင်းစဉ်များအပေါ် အခြေခံ. ပြန်လာသောအကြောင်းအရာများကိုမည်သို့လုပ်ဆောင်ရမည်ကို browser ကဆုံးဖြတ်သည်။ ဥပမာအားဖြင့်:
Content-type အမျိုးအစားသည် browser ကိုမည်သည့်ဖိုင်အမျိုးအစားကိုဖော်ပြသည်။
Content-Desefulce သည် download လုပ်သည့်အခါဖိုင်အမည်ကိုဒေါင်းလုပ်ဆွဲရန်သို့မဟုတ်ဖိုင်အမည်ကိုသတ်မှတ်ရန်တွန်းအားပေးနိုင်သည်။
အကယ်. ကျွန်ုပ်တို့သည် browser ကို PHP မှ Data output ကို Excel ဖိုင်တစ်ခုအဖြစ်လုပ်ဆောင်လိုပါကဤခေါင်းစီးများကိုသတ်မှတ်ရမည်။
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 များကိုတိုက်ရိုက်ထုတ်လုပ်ခြင်းမရှိသေးပါ။
ကွဲပြားခြားနားသောပို့ကုန်ပုံစံများနှင့်ကွဲပြားခြားနားသော MIME အမျိုးအစားများ။ အများအားဖြင့်အသုံးပြုသည် -
လျှောက်လွှာ / vnd.ms-Excel - ရိုးရာ .xls ဖိုင်။
application / vnd.openxmlformats-offereded.spreads.spreadml.sheet - Excel 2007 နှင့်အထက် .xlsx ဖိုင်များအထက်။
လျှောက်လွှာ / CSV သို့မဟုတ် Text / CSV - CSV ဖိုင်။
အကယ်. သင်သည် .xlsx ဖိုင်ကိုထုတ်ပေးပါကသင်လည်း phpspreadsheet ကဲ့သို့သော phpspreadsheet ကဲ့သို့သောစာကြည့်တိုက်များလည်းအသုံးပြုရန်လိုအပ်သည်။
အထူးသဖြင့်တရုတ်များအပါအ 0 င် Excel ဖိုင်များကိုထုတ်လုပ်သည့်အခါ coding ပြ issues နာများမှာဘုံဖြစ်သည်။
အမြဲမေးလေ့ရှိသောမေးခွန်းများ:
Excel ဖိုင်ကိုဖွင့်ပြီးနောက်တရုတ်စာသားသည် garbled code ကိုပြသသည်။
အထူးအက္ခရာများကိုမှားယွင်းစွာခွဲခြမ်းစိတ်ဖြာကြသည်။
ဖြေရှင်းချက် -
Output ကို GB2312 သို့မဟုတ် UTF-16LE ကဲ့သို့သော Excel မှအသိအမှတ်ပြုထားသော encoding encoding encoding ကိုသုံးရန် iconv () သို့မဟုတ် mb_converterverv_encoding ကိုသုံးပါ။
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";
?>
.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", "အသေးစိတ်ကိုစစ်ဆေးပါ")');
အရေးအကြီးဆုံးအရာက Excel ဖိုင်များကိုတင်ပို့ရန် header () ကို အသုံးပြုရန်ဖြစ်သည်။
အကြောင်းအရာ - အမျိုးအစား နှင့် အကြောင်းအရာ - သဘောထားကို မှန်ကန်စွာသတ်မှတ်ပါ။
ဇာတ်ကောင်ကိုကောင်းစွာ encoding ကိုကိုင်တွယ်ပါ။
ရှုပ်ထွေးသောပုံစံများ (ဥပမာ .xlsx ) ကိုအထူးစာကြည့်တိုက်များ အသုံးပြု. ထုတ်လုပ်ရန်လိုအပ်သည်။
ဤချိန်ညှိချက်များသည်သင်၏ PHP အစီအစဉ်ကို Excel Data ပို့ကုန်လုပ်ဆောင်မှုကိုအလွယ်တကူအကောင်အထည်ဖော်ရန်ခွင့်ပြုသည်။ ဤဆောင်းပါးသည်အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်လမ်းလွှဲများကိုရှောင်ရှားရန်သင်မျှော်လင့်ပါသည်။