လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Flush () ကိုအသုံးပြုခြင်းသည်အကျိုးသက်ရောက်သလား။ သင့်ရဲ့ web server setup မှာတစ်ခုခုမှားနေတယ်

Flush () ကိုအသုံးပြုခြင်းသည်အကျိုးသက်ရောက်သလား။ သင့်ရဲ့ web server setup မှာတစ်ခုခုမှားနေတယ်

gitbox 2025-09-20
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// ဤတွင်ဆောင်းပါး၏အကြောင်းအရာနှင့်မသက်ဆိုင်သောအချို့အရာအချို့ကိုရှိပါတယ် PHP လုံးပေါင်းပြဌါန်းသည့်ဉပဒေ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ပတ်ဝန်းကျင်ကိုစတင်ပါ...\n"</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">ob_start</span></span><span>();
</span><span><span class="hljs-meta">?></span></span><span>

<hr>

</span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// ဆောင်းပါးစတင်သည်</span></span><span>
</span><span><span class="hljs-meta">?></span></span><span>

<h1>အသုံးပြု </span><span><span class="hljs-title function_ invoke__">flush</span></span><span>() ထိရောက်သောမဟုတ်ပါဘူး?ဖြစ်ကောင်းသင့်ရဲ့ Web ဆာဗာတည်ဆောက်မှုနှင့်အတူပြ a နာတစ်ခုရှိသည်</h1>

<p>တည်နေ PHP ဖွံ့ဖြိုးမှုအောက်မှာ,`</span><span><span class="hljs-title function_ invoke__">flush</span></span><span>()` 函数常被အသုံးပြု来立即将输出发送到客户端,ဇာတ်ညွှန်းကိုယူနီဖောင်းမ 0 င်ခင်ကွပ်မျက်သည်အထိစောင့်ဆိုင်းမည့်အစား。它တည်နေ实现长时间运行的任务、Real-time log display、或者进度条更新时非常有အသုံးပြု。မည်မှျပင်,developer အတော်များများကပြ a နာတစ်ခုကြုံတွေ့ရလိမ့်မည်:明明调အသုံးပြု了 <code></span><span><span class="hljs-title function_ invoke__">flush</span></span><span>()

2 ။ ဝက်ဘ်ဆာဗာရိုက်ကူးခြင်း

PHP output ကိုသုတ်လိမ်းပြီးမှပင် web server များ (apache, Nginx) သည်ကြားခံအပြည့်အ 0 သည်သို့မဟုတ်ဇာတ်ညွှန်းပျက်ပြားသည်အထိ output ကိုဆက်လက်သိမ်းဆည်းနိုင်သည်။ ဘုံအခြေအနေများ:

  • Apache : Mod_Deflate သို့မဟုတ် mod_gzip compression module များသည် output ကိုနှောင့်နှေးစေသည်။ သင်သည်ဤ module များ၏ compression function ကိုပိတ်ရန်သို့မဟုတ် configuration ကိုညှိရန်ကြိုးစားနိုင်ပါတယ်။
  • Nginx : Gzip compression ကိုပုံမှန်အားဖြင့်ဖွင့်ထားပြီး proxy_ cbouffering သည်ပစ္စုပ္ပန်ဖြစ်သည်။ ၎င်းသည်ချက်ချင်း output ကိုကာကွယ်နိုင်သည်။ proxy_buffering; တည်နေရာပိတ်ပင်တားဆီးမှုအတွက်သတ်မှတ်နိုင်ပါတယ်။

3 ။ browser အပြုအမူ

အချို့သော browser များသည်စာမျက်နှာကိုမစတင်မှီအချက်အလက်အချို့ကိုစောင့်ဆိုင်းပါလိမ့်မည်, အထူးသဖြင့် output သည်အလွန်သေးငယ်သောအခါ။ ဘုံအလေ့အကျင့်:

  • အကြောင်းအရာများကို browser ကိုဖွင့်ရန်အခွင့်အလမ်းများမထုတ်ယူမီလုံလောက်သော Whitespace ဇာတ်ကောင်များကိုလုံလောက်စွာပို့ပေးပါ။
  • HTTP header ကို Output မတိုင်မီပေးပို့ပါ။ Header ('Content-encoding: none'); compression ကြောင့်ဖြစ်ရတဲ့နှောင့်နှေးကာကွယ်ထား။

4 ။ ပြည့်စုံသောဥပမာ
<span><span><?php</span></span><span>
</span><span><span>// PHP output ထုတ် buffering disable</span></span><span>
</span><span><span>နေစဉ်</span></span> <span>(</span> <span><span class="function_ invoke__">ob_get_level</span></span> <span>()></span> <span><span>0</span></span> <span>) {
    </span><span><span class="function_ invoke__">ob_end_flush</span></span> <span>();
}

</span><span><span>ပဲ့တင်သံ</span></span><span> </span><span><span class="function_ invoke__">strow_repeat</span></span> <span>(</span> <span><span>""</span></span> <span>,</span> <span><span>1024</span></span> <span>);</span> <span><span>// browser rendering ခလုတ်ကို font လုပ်ဖို့အလုံအလောက်ဒေတာပေးပို့ပါ</span></span><span>

</span><span>(</span> <span><span>$ i</span></span> <span>=</span> <span><span>1</span></span> <span>;</span> <span><span>$ i</span></span> <span><=</span> <span><span>5</span></span> <span>;</span> <span><span>$ i</span></span> <span>++)</span> <span><span>အတွက်</span></span><span>
    </span><span><span>ပဲ့တင်သံ</span></span><span> </span><span><span>"အပြောင်းအလဲနဲ့အဆင့် <span>$ i</span></span></span> <span>...<br> \ n ";
    </span><span><span class="function_ invoke__">flush</span></span> <span>();
    </span><span><span class="function_ invoke__">အိပ်</span></span> <span>(</span> <span><span>1</span></span> <span>),
}
</span><span><span>></span></span><span>
</span></span><p>အထက်ပါနည်းလမ်းဖြင့်သင် <span class="fun">Flush ()</span> ပုံမှန်အားဖြင့်ပုံမှန်အားဖြင့်အကျိုးသက်ရောက်နိုင်သည်ကိုသေချာစေနိုင်သည်။ သို့သော် output latency သည် PHP, Web server နှင့် browser ၏အချင်းချင်းဆက်နွယ်မှုများပေါင်းစပ်ခြင်း၏စုပေါင်းသွဇာလွှမ်းမိုးမှု၏ရလဒ်ဖြစ်နိုင်သည်ကိုသတိရပါ။</p> <span><span><?php</span></span><span>
</span><span><span>// ဆောင်းပါး၏အဆုံး, အကြောင်းအရာ၏အဆုံးသည်အကြောင်းအရာနှင့်ဆက်စပ်မှုမရှိပါ</span></span><span>
</span><span><span>ပဲ့တင်သံ</span></span><span> </span><span><span>"ဒီဆောင်းပါးက load လုပ်ထားတယ်။ \ n"</span></span> <span>;</span> <span><span>></span></span><span>
</span></span></div></div>