File Download function သည် web application များကိုတီထွင်သောအခါအလွန်အသုံးများသောလိုအပ်ချက်ဖြစ်သည်။ သို့သော်တစ်ခါတစ်ရံတွင်အသုံးပြုသူများသည်ပုံမှန်အားဖြင့်၎င်းကိုဒေါင်းလုတ်လုပ်ပြီးနောက်ပုံမှန်အားဖြင့် PHP file ကိုဖွင့ ်. မရပါ။ ဤပြ problem နာအမျိုးအစားသည် server ၏ file ကိုဖိုင်ကူးယူခြင်းထက်စာသား output ကို par output အဖြစ် par output အဖြစ်သတ်မှတ်ခြင်းကြောင့်ဖြစ်သည်။ ဤဆောင်းပါးသည်ဤပြ problem နာ၏အကြောင်းရင်းများနှင့်သက်ဆိုင်ရာဖြေရှင်းနည်းများကိုမိတ်ဆက်ပေးလိမ့်မည်။
PHP file ကိုမှန်ကန်စွာဒေါင်းလုတ် လုပ်. မရပါက၎င်းမှာ၎င်းကိုပူးတွဲဖိုင်ပုံစံဖြင့်ပြောင်းရွှေ့မည့်အစားစာသားထဲတွင် browser ကိုမှားယွင်းစွာထုတ်ဖော်ပြောဆိုခြင်းကြောင့်ဖြစ်သည်။ ဤပြ problem နာမျိုးသည်များသောအားဖြင့်အောက်ပါအချက်များပေါ်တွင်မူတည်သည်။
PHP ဖိုင်ကို browser ကို downloadable file တစ်ခုအဖြစ်အသိအမှတ်ပြုရန်အတွက်ဘရောက်ဇာကို http header မှတဆင့်ဖိုင်အမျိုးအစားနှင့်ဒေါင်းလုပ်နည်းလမ်းကိုမှန်ကန်စွာအသိပေးရမည်။ ဤတွင်နမူနာကုဒ်ဖြစ်သည်။
$file_path = 'path/to/file.php';
$file_name = 'example.php';
header("Content-disposition: attachment; filename=" . $file_name);
header("Content-type: application/octet-stream");
readfile($file_path);
ဒီကုဒ်ထဲမှာ:
Code ၏ထိန်းသိမ်းနိုင်မှုနှင့်ပြန်လည်သုံးသပ်ခြင်းကိုတိုးတက်စေရန် download ယုတ္တိဗေဒကိုလုပ်ဆောင်ချက်များတွင် encapsulated လုပ်နိုင်သည်။
function download_file($file_path, $file_name) {
header("Content-disposition: attachment; filename=" . $file_name);
header("Content-type: application/octet-stream");
readfile($file_path);
}
// Call ဥပမာ
$file_path = 'path/to/file.php';
$file_name = 'example.php';
download_file($file_path, $file_name);
ဒီ function ကိုအသုံးပြုခြင်းကိုဒေါင်းလုပ်ယုတ္တိဗေဒ၏ထပ်ခါတလဲလဲအရေးအသားကိုရှောင်ရှားနိုင်ပြီးနောက်ဆက်တွဲစီမံခန့်ခွဲမှုကိုလွယ်ကူချောမွေ့စေသည်။
မှန်ကန်သော HTTP header ကိုသတ်မှတ်ပြီးသည့်နောက်ဖိုင်ကိုမဖွင့်နိုင်ပါကအောက်ပါရှုထောင့်များမှဖြေရှင်းရန်အကြံပြုပါသည်။
အကယ်. ပြ the နာကိုဖြေရှင်းနိုင်ရန်မဖြေရှင်းနိုင်ပါကဆာဗာ၏ MIME အမျိုးအစားချိန်ညှိချက်များကိုစစ်ဆေးရန်သို့မဟုတ်နောက်ထပ်အထောက်အပံ့အတွက်အိမ်ရှင်ပံ့ပိုးသူကိုဆက်သွယ်ပါ။
PHP file download download ပျက်ကွက်ခြင်းသည်များသောအားဖြင့်မရှိတော့ http header သတင်းအချက်အလက်သို့မဟုတ်ဆာဗာဖွဲ့စည်းမှုဆိုင်ရာပြ issues နာများကြောင့်ဖြစ်သည်။ အကြောင်းအရာ - သဘောထား နှင့် အကြောင်းအရာအမျိုးအစားကို မှန်ကန်စွာချိန်ညှိခြင်းနှင့် readfile () ကို အသုံးပြု. ဖိုင်အကြောင်းအရာကိုမှန်ကန်စွာဖတ်ခြင်းအားဖြင့်ဖိုင်၏ပုံမှန် download ကိုသင်အောင်မြင်နိုင်သည်။ ထို့အပြင် Encapsulations လုပ်ဆောင်ချက်များသည်ဖွံ့ဖြိုးမှုစွမ်းရည်ကိုတိုးတက်စေသည်။ file syntax ဖိုင် syntax, လမ်းကြောင်းများနှင့်ခွင့်ပြုချက်များသည်လိုအပ်သောအရန်ခြေလှမ်းလည်းဖြစ်သည်။