လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Download ခလုတ်ကိုအကောင်အထည်ဖော်ရန်: ရှေ့ -All သည်တောင်းဆိုမှုကိုဖြစ်ပေါ်စေသည်။

Download ခလုတ်ကိုအကောင်အထည်ဖော်ရန်: ရှေ့ -All သည်တောင်းဆိုမှုကိုဖြစ်ပေါ်စေသည်။

M66 2025-06-05

File download လုပ်ခြင်းသည် 0 က်ဘ်အပလီကေးရှင်းများတွင်အသုံးများသောလိုအပ်ချက်များအနက်မှတစ်ခုဖြစ်သည်။ PHP ၏ header () function ကိုမှတစ်ဆင့်ဖိုင်များကို browser ထဲသို့တွန်းပို့နိုင်ပြီးအသုံးပြုသူဖိုင်ကိုကူးယူခြင်းစစ်ဆင်ရေးကိုဖြစ်ပေါ်စေသည်။ ဤဆောင်းပါးသည် PHP ၏ header () function () function မှတဆင့် File download function function ကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုအသေးစိတ်ဖော်ပြပြီးရှေ့တန်းအဆုံးသည် browser သို့တွန်းပို့ရန် Header () function ကိုမည်သို့အသုံးပြုသည်ကိုရှင်းပြပါမည်။

File Download ကို Front-end အတွက်ဘယ်လိုလုပ်မလဲ။

ရှေ့တန်းမှာ download download တောင်းဆိုမှုများကို trigger to file trigger to html (သို့) JavaScript ကိုသုံးနိုင်သည်။ အလွယ်ကူဆုံးနည်းလမ်းမှာ link တစ်ခုကိုနှိပ်ခြင်းအားဖြင့် download ကိုဖွင့်ရန်ဖြစ်သည်။ များသောအားဖြင့်ကျွန်ုပ်တို့သည် link တစ်ခုကိုသတ်မှတ်ရန်နှင့်ဖိုင်၏ URL ကိုသတ်မှတ်ရန် href ကို သုံးရန် tag ကိုအသုံးပြုသည်။

 <a href="http://m66.net/download.php?file=example.txt" download>ဖိုင်ကိုဒေါင်းလုပ်ဆွဲရန်နှိပ်ပါ</a>

ဤဥပမာတွင်အသုံးပြုသူသည် link ကိုနှိပ်ပြီး browser သည် download.php ဖိုင်ကိုတောင်းခံပြီးဖိုင်တွဲများကိုတောင်းဆိုလိမ့်မည်

ထို့အပြင်သင်သည် JavaScript မှတဆင့်ဖိုင်ကူးယူထားသောဒေါင်းလုပ်များကိုလည်းပြောင်းလဲနိုင်သည်။

 function downloadFile() {
    const xhr = new XMLHttpRequest();
    xhr.open("GET", "http://m66.net/download.php?file=example.txt", true);
    xhr.responseType = "blob"; // ပြန်လာသောဒေတာသည် binary file တစ်ခုဖြစ်ကြောင်းဖော်ပြသည်
    xhr.onload = function() {
        const blob = xhr.response;
        const link = document.createElement('a');
        link.href = URL.createObjectURL(blob);
        link.download = 'example.txt'; // download လုပ်ထားသောဖိုင်အမည်ကိုသတ်မှတ်ပါ
        link.click(); // ခလုတ်ကိုနှိပ်ပါ,ဖိုင်ကို download လုပ်ပါ
    };
    xhr.send();
}

ဤ JavaScript သည် Ajax မှတဆင့်ဖိုင်ကိုတောင်းခံပြီး Blob Object ကိုအသုံးပြုသည်။

backend တွင် header () ကို အသုံးပြု. ဖိုင်များကိုမည်သို့နှိပ်ရမည်နည်း။

PHP တွင် header () function ကိုအသုံးပြုသည်။ header () function ကိုမှတစ်ဆင့်ဖိုင်တစ်ခုကို download လုပ်ရန် browser ကိုပြောနိုင်သည်။ သတ်သတ်မှတ်မှတ်စစ်ဆင်ရေးများမှာအောက်ပါအတိုင်းဖြစ်သည် -

  1. ပထမ ဦး စွာဖိုင်၏တည်ရှိမှုကိုအတည်ပြုရန်သေချာအောင်လုပ်ပါ။

  2. ဖိုင်ကိုမည်သို့ကိုင်တွယ်ရမည်ကိုဘရောက်ဇာကိုပြောပြရန်သင့်လျော်သောအကြောင်းအရာအမျိုးအစားနှင့်အကြောင်းအရာ - သဘောထား - သဘောထား - သဘောထား - သဘောထား - သဘောထား - သဘောထား - သဘောထား - စိတ်ထားမှသဘောထားခေါင်းစဉ်များထားပါ။

  3. ဖိုင်အိတ်အကြောင်းအရာများကို browser သို့ output လုပ်ရန် readfile () သို့မဟုတ်အခြားနည်းလမ်းများကိုသုံးပါ။

 <?php
// download.php

// ဖိုင်အမည် parameters တွေကိုရယူပါ
$file = isset($_GET['file']) ? $_GET['file'] : '';
$filePath = '/path/to/files/' . $file; // ဖိုင်ကိုအကြွင်းမဲ့အာဏာလမ်းကြောင်းကိုသတ်မှတ်ပါ

// ဖိုင်တည်ရှိရှိမရှိစစ်ဆေးပါ
if (file_exists($filePath)) {
    // တုံ့ပြန်မှုခေါင်းစီးကိုသတ်မှတ်ပါ,告知浏览器ဖိုင်ကို download လုပ်ပါ
    header('Content-Type: application/octet-stream');  // ဖိုင်အမျိုးအစားများအားလုံးနှင့်သက်ဆိုင်သည်
    header('Content-Disposition: attachment; filename="' . basename($filePath) . '"');  // ဖိုင်အမည်ကိုဒေါင်းလုတ် လုပ်. သတ်မှတ်ပါ
    header('Content-Length: ' . filesize($filePath)); // ဖိုင်အရွယ်အစား
    header('Cache-Control: no-cache, no-store, must-revalidate'); // cache ကိုပိတ်ပါ
    header('Pragma: no-cache');
    header('Expires: 0');

    // output ဖိုင်အကြောင်းအရာ
    readfile($filePath);
    exit;
} else {
    echo 'ဖိုင်မရှိပါသို့မဟုတ်လမ်းကြောင်းမှားသည်!';
}
?>

ဤပါရတ်ဥပမာတွင် URL တွင်ဖိုင်များဖြတ်သန်းသွားသောဖိုင်တွဲများကိုပထမ ဦး ဆုံးယူပါ အကယ်. ဖိုင်တည်ရှိပါကဖိုင်မှတ်တမ်းများကို output လုပ်ခြင်းနှင့်အခြားဖိုင်များကို output လုပ်ရန် download type အမျိုးအစားနှင့်အခြားအချက်အလက်များကို အသုံးပြု. ဖိုင် တွဲ () ကို သုံးပါ။

code parsing:

  • Header ('Content-type: application / application / octet-octt-stream)) - ဖိုင်အမျိုးအစားကို binary stream သို့သတ်မှတ်ပါ။ ဖိုင်အမျိုးအစားအမျိုးမျိုးအတွက် application / octet-stream ကို အထွေထွေ MIME အမျိုးအစားအဖြစ်သုံးပါ။

  • header ('အကြောင်းအရာ - စိတ်ထား - ပူးတွဲမှု - ဖိုင်တွဲ = "Filename") - ဖိုင်ကိုတုန့်ပြန်သည့်အခါဖိုင်အမည်ကိုထည့်သွင်းပြီးဖိုင်အမည်ကိုထည့်သွင်းရန် browser ကိုသတ်မှတ်ပါ။ ဖိုင်အမည်ကို Basename မှတဆင့်ရယူနိုင်သည်။

  • header ('အကြောင်းအရာ - အရှည်:' '။ filesize ($ filepathath) : ဖိုင်အရွယ်အစားကိုသတ်မှတ်သည်။ ၎င်းသည်ကြီးမားသောဖိုင်များအတွက်အထူးအရေးကြီးသည်။ Browser (ဘရောက်ဆာ) သည်ဤအချက်အလက်အပေါ် အခြေခံ. ဒေါင်းလုပ်တိုးတက်မှုကိုခန့်မှန်းနိုင်သည်။

  • Readfile ($ filepath) - ဤလုပ်ဆောင်ချက်သည်ဖိုင်ကိုဖတ်ပြီး browser သို့တိုက်ရိုက်ထုတ်ပေးလိမ့်မည်။

  • ထွက်ပေါက်; : ဖိုင်အကြောင်းအရာကိုထုတ်လွှင့်ပြီးနောက် ထွက်ပေါက်ခေါ်ဆိုမှု, မလိုအပ်သော output ကိုသို့မဟုတ်တုန့်ပြန်မှုကိုရှောင်ရှားရန် Script Execution ကိုအဆုံးသတ်သည်။

အကျဉ်းချုပ်

PHP ၏ header () function ကိုအသုံးပြုခြင်းနှင့်သင့်တော်သော http header settings နှင့်ပေါင်းစပ်ခြင်းအားဖြင့် file download function ကိုအကောင်အထည်ဖော်နိုင်သည်။ ရှေ့ဆုံးအဆုံးတွင်အသုံးပြုသူသည် link ကိုနှိပ်ခြင်းသို့မဟုတ် Ajax တောင်းဆိုမှုကိုအစပျိုးခြင်းဖြင့်ဖိုင်ကိုတောင်းဆိုသည်။ နောက်ကျောအဆုံးတွင် PHP သည်မှန်ကန်သောတုံ့ပြန်မှုခေါင်းကို header () function မှတဆင့်သတ်မှတ်ပြီးဖိုင်အကြောင်းအရာကို download လုပ်ရန် browser သို့တွန်းပို့သည်။ ဤနည်းအားဖြင့်သင်သည်သင်၏ web application သို့ဖိုင်ကူးယူနိုင်သောလုပ်ဆောင်နိုင်စွမ်းကိုအလွယ်တကူထည့်နိုင်သည်။