<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Pre- လွတ်လပ်သောကုဒ်ဥပမာ</span></span><span>
</span><span><span class="hljs-variable">$dummyArray</span></span><span> = </span><span><span class="hljs-title function_ invoke__">range</span></span><span>(</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">100</span></span><span>);
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$dummyArray</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$value</span></span><span>) {
</span><span><span class="hljs-variable">$valueSquared</span></span><span> = </span><span><span class="hljs-variable">$value</span></span><span> ** </span><span><span class="hljs-number">2</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
<h1>ကြီးမားသောဖိုင်များပြုပြင်သည့်အခါအသုံးပြုပါ <code>stream_copy_to_streamသို့သော်ဖိုင်သည်အလွန်ကြီးမားသည့်အခါ (MB သို့မဟုတ် GB သို့မဟုတ် GB အဆင့်အထိ) သည်ပရိုဂရမ်တွင်သိသာထင်ရှားသည့်နောက်ကျမှုများကိုရှာဖွေတွေ့ရှိနိုင်ပြီးအချိန်တိုအတွင်းမှတ်ဉာဏ်များစွာကိုဖြည့်ဆည်းပေးနိုင်သည်။ ဘာကြောင့်ဒီလိုဖြစ်ရတာလဲ ဤတွင်အာရုံစူးစိုက်ရန်အဓိကအချက်များအနည်းငယ်ရှိသည်။
Stream_copy_to_stream ရှိဒေတာထုတ်လွှင့်မှုအတွက် default buffer ကိုအသုံးပြုလိမ့်မည်။ အကယ်. ဖိုင်သည်အလွန်ကြီးမားသည်ဆိုပါကမသင့်လျော်သောကြားခံချိန်ညှိချက်များသည်ကျွန်ုပ် / o စစ်ဆင်ရေးများကိုမကြာခဏနှေးကွေးစေနိုင်သည်။ တတိယ parameter ကနေတဆင့်တိုင်းတင်သွင်းသည့်အချက်အလက်ပမာဏကိုသင်ထိန်းချုပ်နိုင်သည်။
</span><span><span class="hljs-title function_ invoke__">stream_copy_to_stream</span></span><span>(</span><span><span class="hljs-variable">$source</span></span><span>, </span><span><span class="hljs-variable">$dest</span></span><span>, </span><span><span class="hljs-number">1024</span></span><span> * </span><span><span class="hljs-number">1024</span></span><span>); </span><span><span class="hljs-comment">// တစ်ခုချင်းစီကိုမိတ္တူ1MB</span></span><span>
ကျိုးကြောင်းဆီလျော်မှုကကြားခံအရွယ်အစားကိုသတ်မှတ်ခြင်းစနစ်ခေါ်ဆိုမှုအရေအတွက်ကိုလျှော့ချပြီးဂီယာထိရောက်မှုကိုတိုးတက်စေသည်။
PHP code ကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်ထားသော်လည်းနောက်ခံ disk သို့မဟုတ် network ၏စာဖတ်ခြင်းနှင့်အရေးအသားအမြန်နှုန်းသည်အလှည့်ကျဆဲဖြစ်သည်။ SSD နှင့် HDD တို့အကြားစွမ်းဆောင်ရည်ကွဲပြားခြားနားမှုများနှင့်ကွန်ယက်ဖြည့်စွက်အရှိန်အဟုန်တွင်အတက်အကျအကြားကွဲပြားခြားနားမှုများသည်ကြီးမားသောဖိုင်ကူးယူမှုကိုရှုပ်ထွေးစေနိုင်သည်။ ဤကိစ္စတွင် optimization code သည်အကျိုးသက်ရောက်မှုအနည်းငယ်သာရှိပြီး hardware သို့မဟုတ် block transmission schremes များကိုထည့်သွင်းစဉ်းစားရန်လိုအပ်သည်။
အကယ်. ဖိုင်သည်အလွန်ကြီးမားသော်ပါက stream_copy_to__stream ကိုတစ်ကြိမ်လွှဲပြောင်းရန်အကောင်းဆုံးဖြေရှင်းနည်းမဟုတ်ပါ။ ဘုံနည်းဗျူဟာများမှာ -
အချုပ်အားဖြင့်ဆိုရလျှင် stream_copy_to_stream သည်အသေးစားနှင့်အလတ်စားဖိုင်များနှင့်ဆက်ဆံရာတွင်အမှန်ပင်အဆင်ပြေသည်, သို့သော်ကြီးမားသောဖိုင်များရင်ဆိုင်ရသောအခါလိပ်များ၏ပြ problem နာကိုလျစ်လျူရှု။ မရပါ။ ကျိုးကြောင်းဆီလျော်သောကြားခံများသတ်မှတ်ခြင်းအားဖြင့်ပြောင်ပြောင်တင်းတင်းလုပ်ခြင်းနှင့်အခြားနည်းဗျူဟာများနှင့်ပေါင်းစပ်ခြင်း, စွမ်းဆောင်ရည်ကိုထိရောက်စွာတိုးတက်အောင်လုပ်နိုင်သည်။
<?php // အမြီး - လွတ်လပ်သောကုဒ်ဥပမာ လုပ်ဆောင်ချက် dummyfunction ( $ num ) { ပြန်လာ array_sum ( အကွာအဝေး ( 1 , $ num )); } $ ရလဒ် = dummyfunction ( 50 ); >