PHP တွင် output buffering သည် output ၏အချိန်နှင့်အကြောင်းအရာများကိုထိန်းချုပ်ရန်ခွင့်ပြုသည့်အလွန်အသုံးဝင်သောအင်္ဂါရပ်တစ်ခုဖြစ်သည်။ output buffer ဖြင့်သင်တုန့်ပြန်မှုမပို့မီ output ကိုပြုပြင်ရန်သို့မဟုတ်ရှင်းလင်းနိုင်သည်။ Ob_List_Handlers သည် output buffer စီမံခန့်ခွဲမှုနှင့်သက်ဆိုင်သည့် PHP function တစ်ခုဖြစ်ပြီးလက်ရှိမှတ်ပုံတင်ထားသော output buffer handlers များကိုစာရင်းပြုစုရန်ကူညီနိုင်သည်။
ဤဆောင်းပါးသည် ob_list_handlers များ၏အခြေခံအသုံးပြုမှုကိုအသေးစိတ်ဖော်ပြရန်နှင့် PHP ၏ output buffer များကိုဥပမာအချို့ကိုစီမံရန်၎င်းကိုမည်သို့အသုံးပြုရမည်ကိုပိုမိုနားလည်ရန်ကူညီလိမ့်မည်။
ob_list_handlers function သည်လက်ရှိမှတ်ပုံတင်ထားသော output ကြားခံကိုင်တွယ်သူအားလုံးပါ 0 င်သည့်နေရာတစ်ခုကိုပြန်လည်ရောက်ရှိစေသည်။ output buffer handler သည် buffer contents များကိုကိုင်တွယ်နိုင်သည့် callback function ကိုဖြစ်သည်။ ၎င်းတို့ကိုပြုပြင်မွမ်းမံခြင်း,
array ob_list_handlers ( void )
ဤလုပ်ဆောင်ချက်သည်မည်သည့် parameters တွေကိုလက်မခံပါ။
ဤလုပ်ဆောင်ချက်သည်မှတ်ပုံတင်ထားသော output buffer handlers များအားလုံးပါ 0 င်သောခင်းကျင်းမှုကိုပြန်လည်ရောက်ရှိစေသည်။ အကယ်. output buffer handlers များကိုမှတ်ပုံတင်ထားခြင်းမရှိပါကအချည်းနှီးသောခင်းကျင်းမှုကိုပြန်ပို့သည်။
ob_list_handlers အသုံးပြုမှုကိုမဆွေးနွေးမီ output buffers ၏အခြေခံအယူအဆကိုပြန်လည်သုံးသပ်ကြပါစို့။
PHP မှ output buffer သည် output ကို browser သို့တိုက်ရိုက်ပို့မည့်အစား output ကိုယာယီသိမ်းဆည်းရန်ခွင့်ပြုသည်။ ဤနည်းအားဖြင့်အကြောင်းအရာကိုအမှန်တကယ်မပို့မီပြင်ဆင်ခြင်းသို့မဟုတ်သန့်ရှင်းရေးပြုလုပ်နိုင်သည်။ ဥပမာအားဖြင့်, သင်သည် html ကိုချုံ့ရန် output buffer ကိုသုံးနိုင်သည်။
output buffer ကိုအောက်ပါလုပ်ဆောင်ချက်များကိုဖွင့်ထားသည်။
ob_start () - output buffer ကိုစတင်ပါ။
ob_end_flush () - လက်ရှိကြားခံကိုပိတ်ပြီးအကြောင်းအရာကိုပို့ပါ။
ob_clean () : ကြားခံကိုပိတ်ပြီးအကြောင်းအရာကိုဖယ်ရှားပါ။
Ob_List_Handlers များသည် လက်ရှိမှတ်ပုံတင်ထားသော output buffer handler ကိုကြည့်ရှုရန်အဓိကအားဖြင့်အသုံးပြုသည်။ အကယ်. သင်သည် output buffer များ၏အပြုအမူကိုစီမံခန့်ခွဲလိုပါက Buffer Handlers များကိုမည်သို့မှတ်ပုံတင်ရမည်ကိုသင်ပထမ ဦး ဆုံးနားလည်ရန်လိုအပ်သည်။
Ob_list_Handlers ကို မည်သို့အသုံးပြုရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုမှာလက်ရှိမှတ်ပုံတင်ထားသောကြားခံကိုင်တွယ်သူများကိုစာရင်းပြုစုရမည်။
<?php
// output ကြားခံစတင်ပါ
ob_start();
// စိတ်ကြိုက် buffer handler ကိုမှတ်ပုံတင်ပါ
ob_start(function ($buffer) {
return str_replace('Hello', 'Hi', $buffer); // output အကြောင်းအရာကိုအစားထိုးပါ 'Hello' အတွက် 'Hi'
});
// မှတ်ပုံတင်ထားသော output buffer handlers အားလုံးကိုရယူပါ
$handlers = ob_list_handlers();
// မှတ်ပုံတင်ထားသော output buffer handlers အားလုံးကိုပုံနှိပ်ပါ
echo "မှတ်ပုံတင်ထားသောကြားခံကိုင်တွယ်သူ:\n";
print_r($handlers);
// အကြောင်းအရာအချို့ကို output
echo "Hello, World!";
// output buffer အဆုံးသတ်နှင့်အကြောင်းအရာပေးပို့ပါ
ob_end_flush();
?>
ob_list_handlers function သည် output buffers status ၏ status ကို debugging နှင့်စောင့်ကြည့်လေ့လာရန်အလွန်သင့်လျော်သည်။ အမှန်တကယ်စီမံကိန်းများအရတိကျသောကြားခံကိုင်တွယ်သူသည်လက်ရှိတွင်ကိုင်ဆောင်ထားသည့်ကိုင်တွယ်သူတစ် ဦး သည်လက်ရှိမှတ်ပုံတင်ထားပြီး output buffer ၏အပြုအမူကိုမှတ်ပုံတင်ရန်သို့မဟုတ်ပြုပြင်မွမ်းမံခြင်းရှိမရှိစစ်ဆေးရန်သင်အသုံးပြုနိုင်သည်။
ဥပမာအားဖြင့်, ရှုပ်ထွေးသော applications များတွင်အကြောင်းအရာများကိုပြုပြင်ရန်သို့မဟုတ်ချုံ့ရန်ကြားခံကိုင်တွယ်သူများစွာကိုသုံးနိုင်သည်။ ob_list_handlers များကို ခေါ်ဆိုခြင်းအားဖြင့်သင်သည်လက်ရှိကိုင်တွယ်သူအားလုံးကိုအလွယ်တကူစစ်ဆေးပြီးသင်၏လိုအပ်ချက်နှင့်အညီ၎င်းတို့ကိုချိန်ညှိနိုင်သည်။
<?php
// ကြားခံစတင်ပါ
ob_start();
// Handler မှတ်ပုံတင်ပါ
ob_start(function ($buffer) {
return strtoupper($buffer); // 将output ကိုအကြောင်းအရာ转换အတွက်大写
});
// မှတ်ပုံတင်ထားသော handler ကိုရယူပါ
$handlers = ob_list_handlers();
// အဆိုပါ handler မှတ်ပုံတင်ခဲ့တာဖြစ်ပါတယ်လျှင်,Print Handler စာရင်း
if (count($handlers) > 0) {
echo "当前မှတ်ပုံတင်ထားသောကြားခံကိုင်တွယ်သူ如下:\n";
print_r($handlers);
}
// output ကိုအကြောင်းအရာ
echo "Hello, PHP!";
// အဆုံးနှင့် output buffer အကြောင်းအရာ
ob_end_flush();
?>
ဤဥပမာတွင် ob_list_Handlers များသည်လက်ရှိတွင်ကိုင်တွယ်သူကိုင်တွယ်သူမှတ်ပုံတင်ခြင်းရှိ,
ob_list_handlers function သည်လက်ရှိမှတ်ပုံတင်ထားသော output buffer handler ကိုကြည့်ရှုရန်ကူညီနိုင်သည့်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။ PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင် output buffer များ၏ဆင်ခြင်တုံတရားကိုဆင်ခြင်တုံတရား၏အသုံးပြုမှုသည်စွမ်းဆောင်ရည်ကိုတိုးတက်စေနိုင်သည်။
ဤဆောင်းပါး၏နိဒါန်းနှင့်ဥပမာများမှတစ်ဆင့် Ob_list_Handlers function ကိုပိုမိုနက်ရှိုင်းစွာနားလည်နိုင်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။ PHP ၏ output buffers များကိုစီမံရန်အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်၎င်းကိုထိရောက်စွာအသုံးချနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။