PHP တွင် header () function နှင့် ob_start () function သည် ob_start () function သည်အစွမ်းထက်သောကိရိယာနှစ်ခုဖြစ်သည်။ ရှုပ်ထွေးသော 0 က်ဘ်အပလီကေးရှင်းများနှင့်ဆက်ဆံရာတွင်စွမ်းဆောင်ရည်ကိုပိုမိုထိရောက်စွာထိန်းချုပ်ရန်နှင့်အဆင့်မြင့် cachevize ယန္တရားများကိုပိုမိုထိရောက်စွာထိန်းချုပ်ရန်ကူညီနိုင်သည်။ ဤဆောင်းပါးသည်အသုံးပြုမှုနည်းစနစ်များနှင့်၎င်းတို့၏ပေါင်းစပ်ထားသောအသုံးချပရိုဂရမ်များကိုအသေးစိတ်မိတ်ဆက်ပေးလိမ့်မည်။
HTTP HTTER header သတင်းအချက်အလက်များကိုပေးပို့ရန် header () function ကိုအသုံးပြုသည်။ PHP တွင် Header () မှ မဟုတ်ရင်အမှားအယွင်းများကိုမပြုပြင်နိုင်ပါ။ ထို့ကြောင့်ကျွန်ုပ်တို့သည်များသောအားဖြင့် header () function ကိုအသုံးပြုလေ့ရှိသည်။
// redirect တက် set up
header("Location: http://m66.net/somepage.php");
exit;
အထက်တွင်ဖော်ပြခဲ့သည့်အတိုင်းအသုံးပြုသူသည်လက်ရှိစာမျက်နှာကိုဝင်ရောက်ကြည့်ရှုသောအခါ browser ကို http://m66.net/somepage.php စာမျက်နှာသို့ပြန်ပို့လိမ့်မည်။
Redirection အပြင် Header () ကို cache, set text အမျိုးအစားများစသည်ဖြင့်လည်းအသုံးပြုနိုင်သည် ။
// cache ကိုပိတ်ပါ
header("Cache-Control: no-cache, no-store, must-revalidate");
header("Pragma: no-cache");
header("Expires: 0");
ob_start () function ကို output buffer စတင်ရန်အသုံးပြုသည်။ output buffering ကိုဖွင့်သောအခါ output data အားလုံးကိုကြားခံတွင်ယာယီသိမ်းဆည်းထားပြီးဇာတ်ညွှန်းကိုကွပ်မျက်ခံရသည်အထိသို့မဟုတ် ob_end_flush () ကိုခေါ်သည့်အထိ browser ကိုယာယီသိမ်းပိုက်လိမ့်မည်မဟုတ်။ ၎င်းသည်ကျွန်ုပ်တို့အား output မတိုင်မီအချက်အလက်များကိုလုပ်ဆောင်ရန်ခွင့်ပြုသည်, ဥပမာအားဖြင့်အကြောင်းအရာသို့မဟုတ် cacheing ကဲ့သို့သောရှုပ်ထွေးသောလုပ်ငန်းများကိုလုပ်ဆောင်ရန်ခွင့်ပြုသည်။
// output ကို buffering စတင်ပါ
ob_start();
// output ကိုအကြောင်းအရာ
echo "Hello, World!";
// Buffer အကြောင်းအရာကိုရယူပါ
$content = ob_get_contents();
// ကြားခံရှင်းလင်းပါ
ob_end_clean();
// အကြောင်းအရာနှင့် output ကိုပြုပြင်မွမ်းမံ
echo "Modified Content: " . strtoupper($content);
အထက်ဖော်ပြပါဥပမာတွင် Ob_start () သည် ob_get_contents () ob_get_contents () ob_get_contents () obfer, ob_clean () တွင်ပါ 0 င်သည်။ ဤနည်းအားဖြင့် developer များသည် outputting မတိုင်မီအကြောင်းအရာပိုမိုရှုပ်ထွေးသောအကြောင်းအရာကိုလုပ်ဆောင်နိုင်သည်။
header () နှင့် ob_start () ကိုပေါင်းစပ်ခြင်း () , ကျွန်ုပ်တို့သည်စာမျက်နှာ၏ output ကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်ကိုထိန်းချုပ်နိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည် 0 က်ဘ်စာမျက်နှာတစ်ခု၏အကြောင်းအရာများကိုသိုလှောင်ရန်ကွန်ယက်စာမျက်နှာတစ်ခု၏အကြောင်းအရာများကိုသိုလှောင်ရန် Caching ယန္တရားကိုသုံးနိုင်သည်။ အောက်တွင်ဖော်ပြထားသော OB_START () နှင့် header () header () header () header () header ကိုအသုံးပြုခြင်းသည်ဥပမာတစ်ခုဖြစ်သည်။
// output ကို buffering စတင်ပါ
ob_start();
// cache header ကိုသတ်မှတ်ပါ
header("Cache-Control: max-age=3600");
// ဒေတာဘေ့စမှရရှိသောအကြောင်းအရာများကိုတုပပါ
echo "Content generated at: " . date('Y-m-d H:i:s');
// cached အကြောင်းအရာကိုရယူပါ
$page_content = ob_get_contents();
// ဖိုင်များကိုသိမ်းဆည်းထားသောအကြောင်းအရာများကိုသိမ်းဆည်းပါ
file_put_contents('cached_page.html', $page_content);
// ရှင်းရှင်းလင်းလင်းနှင့် buffer ကိုပိတ်ပါ
ob_end_flush();
ဤဥပမာတွင် header () , ob_start () ကို အသုံးပြု. cache control ကိုအသုံးပြုသည်။ ထို့နောက်အကြောင်းအရာကိုထုတ်ပေးသည်။ ဤအရာကိုအားသာချက်မှာ browser (ဘရောက်ဆာ) များနှင့်ဆာဗာများသည်မလိုအပ်သောစာမျက်နှာတင်ခြင်းကိုလျှော့ချရန် cacheing ယန္တရားကိုထိရောက်စွာအသုံးချနိုင်သည်။
header () နှင့် ob_start) ကိုပေါင်းစပ်ပြီးအသုံးပြုသူ၏ authentication စသည့်ရှုပ်ထွေးသောခြွင်းချက်ဆိုင်ရာတရားစီရင်ရာများကိုလည်းအကောင်အထည်ဖော်နိုင်သည်။ အသုံးပြုသူသည် logged in 0 င်ရောက်ခြင်းမရှိပါကသင် cache ကို ဦး စွာစစ်ဆေးနိုင်ပြီး cache သက်တမ်းကုန်ဆုံးလျှင်သို့မဟုတ်မတည်ရှိပါက redirect ။
// output ကို buffering စတင်ပါ
ob_start();
// အသုံးပြုသူ logged in ဝင်ပါကစစ်ဆေးပါ
if (!isset($_SESSION['user_id'])) {
// login စာမျက်နှာသို့ redirect
header("Location: http://m66.net/login.php");
exit;
}
// output ကိုအကြောင်းအရာ
echo "Welcome, " . $_SESSION['user_name'];
// buffered အကြောင်းအရာရယူပါ
$content = ob_get_contents();
// ကြားခံရှင်းလင်းပါ
ob_end_clean();
// Exput ကိုစာမျက်နှာအကြောင်းအရာ
echo $content;
ဤဥပမာတွင် header () သည် Ob_start () နှင့်ကြားခံယန္တရားများကိုလွှဲပြောင်းခြင်းမပြုမီ oblogged အသုံးပြုသူများကို redirect လုပ်ရန်အသုံးပြုသည်။
header () နှင့် ob_start () ကို ပေါင်းစပ်ခြင်းအားဖြင့် PHP တွင်အစွမ်းကုန်ထုတ်လုပ်မှုထိန်းချုပ်မှုနှင့် cache စီမံခန့်ခွဲမှုများကိုအကောင်အထည်ဖော်နိုင်သည်။ Http Header Information, cache, cache, redirection, redirection စသည်ဖြင့်ပို့ရန်အဓိကအားဖြင့်အသုံးပြုသည်။ ob_start () output ကို cache ကို cache လုပ်နိုင်ပါတယ်, ထုတ်လုပ်မှုမတိုင်မီသို့မဟုတ်ပြုပြင်မွမ်းမံရန်ပိုမိုလွယ်ကူစေသည်။ ဖွံ့ဖြိုးရေးလုပ်ငန်းစဉ်အတွင်းရှုပ်ထွေးသော output control နှင့် cache striesisties များကိုပိုမိုလွယ်ကူစွာထိရောက်စွာကိုင်တွယ်နိုင်အောင်ကူညီနိုင်သည်။
ဆင်ခြင်တုံတရားနှစ်ခုကို အသုံးပြု. PHP application များ၏စွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်စွာတိုးတက်ကောင်းမွန်စေပြီးပိုမိုပြောင်းလွယ်ပြင်လွယ်နှင့်ထိန်းချုပ်နိုင်မှုကို developer များထံမှပိုမိုလွယ်ကူစွာပြုလုပ်နိုင်သည်။ ဤဆောင်းပါးတွင်ရှင်းပြချက်သည်သင့်အားပိုမိုကောင်းမွန်သောနားလည်မှုနှင့်အသုံးပြုမှု ကို ပိုမိုကောင်းမွန်စွာနားလည်ရန်နှင့် အသုံးပြု. အသုံးပြု . သင်၏စီမံကိန်းတွင်ပိုမိုကောင်းမွန်သည့် output management ကိုရရှိရန်ကူညီနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။