<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// ဤကုဒ်၏ဤအပိုင်းသည်ဆောင်းပါး၏အကြောင်းအရာများနှင့်လုံးဝမသက်ဆိုင်ပါ,သာဥပမာအဖြစ်</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ဒီဆောင်းပါးကိုဖတ်ရန်လှိုက်လှဲစွာကြိုဆိုပါသည်!"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
တည်နေ PHP အတွက်အသုံးပြုခဲ့သည် </span><span><span class="hljs-title function_ invoke__">floor</span></span><span>() Decimal အမှတ်အသားများအတွက် rounding အမှားများကိုရှောင်ရှား function ကိုများအတွက်သိကောင်းစရာများ
တည်နေ进行数值计算时,အထူးသဖြင့်ဒ decimal မအချက်များပါ 0 င်သည့် rounding စစ်ဆင်ရေး,PHP built-in လုပ်ဆောင်ချက်များကို </span><span><span class="hljs-title function_ invoke__">round</span></span><span>() တစ်ခါတစ်ရံတွင်ရေပေါ်အမှတ်နံပါတ်များ၏တိကျမှုကြောင့်ဖြစ်သည်,ရလဒ်များကျေနပ်မှုမရှိပါ。ဥပမာအားဖြင့်,သင်စျေးနှုန်းလိုအပ်တဲ့အခါ、ထိုကဲ့သို့သောအတိုးနှုန်းများအဖြစ်အချက်အလက်များကိုအပြောင်းအလဲနဲ့အခါ,</span><span><span class="hljs-title function_ invoke__">round</span></span><span>() တိရလဒ်များကိုထုတ်လုပ်နိုင်ပါသည်,၎င်းသည်အစီအစဉ်၏ယုတ္တိဗေဒနှင့်နောက်ဆုံးထွက်ရှိမှုကိုအကျိုးသက်ရောက်သည်。
</span><span><span class="hljs-comment">## မကြာခဏမေးသောမေးခွန်းများ</span></span><span>
PHP floating အချက်တိကျမှန်ကန်မှုကန့်သတ်,ကဲ့သို့ဖြစ်စေသည် </span><span><span class="hljs-number">1.005</span></span><span> ထိုကဲ့သို့သောနံပါတ်များ </span><span><span class="hljs-title function_ invoke__">round</span></span><span>() အပြောင်းအလဲနဲ့အခါ,ဖြစ်လိမ့်မည်ဟုမျှော်လင့်ရသည် </span><span><span class="hljs-number">1.01</span></span><span>,ဒါပေမယ့်ရလဒ်ဖြစ်နိုင်သည် </span><span><span class="hljs-number">1.00</span></span><span>。这是因为浮点数တည်နေ计算机内部是以二进制形式存储的,များစွာသောဒ decimal မ decimal မကိန်းနံပါတ်များကိုတိကျမှန်ကန်စွာထုတ်ဖော်ပြောဆို။ မရပါ,အမှားဖြစ်ပေါ်စေ。
```php
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">round</span></span><span>(</span><span><span class="hljs-number">1.005</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 1</span></span><span>
</span></span>
ကြမ်းပြင် () function ကိုအောက်သို့ rounded ဖြစ်ပါတယ်။ အကယ်. သင်သည် rounding နှင့်တူသောအသံမဟုတ်သော်လည်း အကယ်. သင်သည်ကျယ်ပြန့်စွာချဲ့ထွင်ပြီးချိန်ညှိနိုင်ပါက floating point နံပါတ်များကိုလှည့်ပတ်နေသောအမှားကိုရှောင်ရှားရန် "အနီးဆုံးနိမ့်သောကန့်သတ်ချက်တွင်" အကျိုးသက်ရောက်မှုကိုရရှိနိုင်ပါသည်။
ကိန်းဂဏန်းနှစ်ခုကိုထိန်းသိမ်းထားခြင်းကဲ့သို့သောသက်ဆိုင်ရာဒ decimal မကိန်းကိုတိုးချဲ့ပါ။
ရေပေါ်အမှတ်အသားကိုရှောင်ရှားရန် (ဥပမာ - 0.00001 ကဲ့သို့သော 0.00001) ကို (0.00001 ကဲ့သို့သော) ကိုထည့်ပါ။
ကြမ်းပြင်ကိုသုံးပါ။
နောက်ကျောက၎င်း၏မူရင်းအရွယ်အစားမှကျုံ့။
နမူနာကုဒ်:
<span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">floor_round</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$number</span></span></span><span>, </span><span><span class="hljs-variable">$precision</span></span><span> = </span><span><span class="hljs-number">2</span></span><span>) {
</span><span><span class="hljs-variable">$multiplier</span></span><span> = </span><span><span class="hljs-title function_ invoke__">pow</span></span><span>(</span><span><span class="hljs-number">10</span></span><span>, </span><span><span class="hljs-variable">$precision</span></span><span>);
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-title function_ invoke__">floor</span></span><span>(</span><span><span class="hljs-variable">$number</span></span><span> * </span><span><span class="hljs-variable">$multiplier</span></span><span> + </span><span><span class="hljs-number">0.00001</span></span><span>) / </span><span><span class="hljs-variable">$multiplier</span></span><span>;
}
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">floor_round</span></span><span>(</span><span><span class="hljs-number">1.005</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 1.00,သို့သော်ပိုမိုတိကျသောရလဒ်များရရှိရန်အတွက်သင်၏လိုအပ်ချက်များနှင့်အညီ Offset Value ကိုချိန်ညှိနိုင်သည်</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-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">floor_round</span></span><span>(</span><span><span class="hljs-number">1.2349</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 1.23</span></span><span>
</span></span>
မမျှော်လင့်သောကိန်းဂဏန်းများကိုရှောင်ရှားရန်အမှန်တကယ်အချက်အလက်များ၏အကွာအဝေးအရ offset တန်ဖိုး၏အရွယ်အစားကိုချိန်ညှိရန်လိုအပ်သည်။
အကယ်. သင်သည်တင်းကျပ်သော rounding effects လိုအပ်ပါက BCMATH သို့မဟုတ် GMP ကဲ့သို့သော Multi-Matematical extensions များကိုအသုံးပြုရန်အကြံပြုသည်။
ကြမ်းပြင် () သည် "rounding down" အတွက် "rounding" သို့မဟုတ် "မျိုးစုံ" သို့မဟုတ် "မျိုးစုံ" အခြေအနေများကိုရှောင်ရှားရန်အထောက်အကူပြုသည်။
ကြမ်းပြင်ကို သုံး. ချဲ့ထွင်ခြင်းနှင့်အလွန်သေးငယ်သော offset တန်ဖိုးများနှင့်ပေါင်းစပ်ထားသော function ကိုအသုံးပြုခြင်းသည် floating point နံပါတ်များကို 0 င်ရောက်ခြင်းကြောင့်ဖြစ်ပေါ်လာသောအမှားကိုထိရောက်စွာရှောင်ရှားနိုင်သည်။ ဘဏ် financial ာရေးသို့မဟုတ် metrolicological အချက်အလက်များနှင့်ဆက်ဆံရာတွင်လက်တွေ့ကျသောလှည့်ကွက်တစ်ခုဖြစ်သည်။ floating point နံပါတ်များကိုအခြေခံသည့်စနစ်၏အခြေခံစနစ်ကိုနားလည်ခြင်းနှင့်ဆင်ခြင်ခြင်းများကိုရွေးချယ်ခြင်းနှင့် algorithms များကိုရွေးချယ်ခြင်းနှင့် algorithms ကိုရွေးချယ်ခြင်းသည်သင်၏ PHP အစီအစဉ်ကိုပိုမိုတည်ငြိမ်ပြီးယုံကြည်စိတ်ချရစေနိုင်သည်။
<span><span><span class="hljs-comment">// အဆုံးသည်ဆောင်းပါး၏အကြောင်းအရာနှင့်မသက်ဆိုင်ပါ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"စာဖတ်ခြင်းအတွက်ကျေးဇူးတင်ပါတယ်,သွားတော့မယ်!"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>