PHP တွင်တိကျသောသင်္ချာဆိုင်ရာစစ်ဆင်ရေးများပြုလုပ်ရာတွင်သမားရိုးကျရေပေါ်တွင်တွက်ချက်မှုတွက်ချက်မှုများသည်တိကျမှန်ကန်မှုကင်းမဲ့စေသည်။ အထူးသဖြင့်ငွေကြေးနှင့်အမြတ်အစွန်းကဲ့သို့သောဒေသများနှင့်ဆက်ဆံရာတွင်တိကျမှန်ကန်မှုပြ issues နာများသည်အထူးအရေးကြီးသည်။ PHP သည်အလွန်အစွမ်းထက်သောသင်္ချာတိုးချဲ့စာကြည့်တိုက် - BCMath (Big Numbers) ကိုထောက်ပံ့ပေးသည်။ ၎င်းသည်ကြီးမားသောနံပါတ်များနှင့်အထူးတိကျသောတွက်ချက်မှုပြ problems နာများကိုဖြေရှင်းရန်အထူးအသုံးပြုသည်။ BCSUB နှင့် BCMUL တို့သည်ဘီစီနာစွဲစာကြည့်တိုက်တွင်အမြတ်အစွန်းတွက်ချက်သောအခါမြင့်မားသောတိကျမှန်ကန်မှုကိုသေချာစေရန်အတူတကွအသုံးပြုနိုင်သည်။
BCMUL (String $ left_operand, string ကို string) = 0) - နံပါတ်နှစ်မျိုးကိုမြှောက်ခြင်းများကိုတွက်ချက်ရန်နှင့်ရလဒ်ကိုပြန်ရန်ဒ decimal မနေရာအရေအတွက်ကိုတွက်ချက်ရန်အသုံးပြုသည်။ $ left_operand နှင့် $ roy_operand သည် pultiplication စစ်ဆင်ရေးလုပ်ဆောင်ရန် operand နှစ်ခုဖြစ်သည်။ $ စကေးဒ decimal မအချက်အပြီးတိကျမှန်ကန်မှုကိုထိန်းချုပ်ရန်အသုံးပြုသည်နှင့် default သည် 0 ဖြစ်ပါတယ်။
BCSUB (string $ left_operand), string ကို string $ righerand = 0) - နံပါတ်နှစ်ခု၏နုတ်ခြင်းကိုတွက်ချက်ရန်အသုံးပြုသည်။ $ left_operand သည်နုတ်ပြီးလျှင် right_operand သည်နုတ်ပြီးလျှင် ဒေါ်လာစကေးကို ဒ decimal မနေရာအရေအတွက်ကိုသတ်မှတ်ရန်အသုံးပြုသည်။
အမြတ်တွက်ချက်မှုလုပ်ငန်းစဉ်တွင်ကျွန်ုပ်တို့သည်ထပ်တိုးခြင်း, နုတ်ခြင်းနှင့်မြှောက်ခြင်းကဲ့သို့သောလုပ်ငန်းများကိုလုပ်ဆောင်ရန်လိုအပ်သည်။ အမြတ်ကိုတွက်ချက်ရာတွင်အရောင်းအ 0 ယ်ကိုအရောင်းအ 0 ယ်တွက်ချက်ရန်လိုသည်ဆိုပါစို့။
ဥပမာအားဖြင့်ကုမ္ပဏီတစ်ခုသည်ကုန်ပစ္စည်းတစ်ခုရောင်းချသည့်အခါဈေးနှုန်းမှာယွမ် 100 ဖြစ်ပြီးထုတ်လုပ်မှုကုန်ကျစရိတ်မှာယွမ် 60 ရှိပြီးအခွန်၏ 10% သည်။ ထို့နောက်အမြတ်အစွန်းတွက်ချက်မှုများကိုအောက်ပါအတိုင်းပြိုကွဲပျက်စီးစေနိုင်သည်။
အရောင်းအတွက်အခွန်ကိုတွက်ချက်ခြင်း - အခွန် 10% သည်ရောင်းအား၏ 10% ရှိပြီးအခွန်များကိုတွက်ချက်ရန် BCMUL ကို အသုံးပြုသည်။
အမြတ်အစွန်းတွက်ချက်မှု - အမြတ်သည်အရောင်းအ 0 ယ်အမြတ်နှင့်အခွန်အခများ, ဤတွင်ကျွန်ုပ်တို့သည် BCSub ကို ပထမ ဦး စွာနုတ်ရန်နှင့်ရလဒ်များ၏တိကျမှန်ကန်မှုကိုသေချာစေရန်အတွက် BCSub ကိုအသုံးပြုသည်။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// တိကျမှန်ကန်မှုကိုသတ်မှတ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$scale</span></span><span> = </span><span><span class="hljs-number">2</span></span><span>; </span><span><span class="hljs-comment">// ဒ decimal မသောနေရာများကိုသိမ်းထားပါ</span></span><span>
</span><span><span class="hljs-comment">// ကုန်ပစ္စည်းစျေးနှုန်းနှင့်ကုန်ကျစရိတ်</span></span><span>
</span><span><span class="hljs-variable">$sales_price</span></span><span> = </span><span><span class="hljs-string">'100.00'</span></span><span>; </span><span><span class="hljs-comment">// အရောင်းစျေးနှုန်း</span></span><span>
</span><span><span class="hljs-variable">$cost_price</span></span><span> = </span><span><span class="hljs-string">'60.00'</span></span><span>; </span><span><span class="hljs-comment">// စျေးစျေး</span></span><span>
</span><span><span class="hljs-comment">// အခွန်နှင့်အခကြေးငွေတွက်ချက်(အခွန်နှုန်းထားသည်10%)</span></span><span>
</span><span><span class="hljs-variable">$tax_rate</span></span><span> = </span><span><span class="hljs-string">'0.10'</span></span><span>; </span><span><span class="hljs-comment">// 10%အခွန်နှုန်း</span></span><span>
</span><span><span class="hljs-variable">$tax</span></span><span> = </span><span><span class="hljs-title function_ invoke__">bcmul</span></span><span>(</span><span><span class="hljs-variable">$sales_price</span></span><span>, </span><span><span class="hljs-variable">$tax_rate</span></span><span>, </span><span><span class="hljs-variable">$scale</span></span><span>); </span><span><span class="hljs-comment">// အရောင်းစျေးနှုန်း * အခွန်နှုန်း</span></span><span>
</span><span><span class="hljs-comment">// အမြတ်အစွန်းတွက်ချက်</span></span><span>
</span><span><span class="hljs-variable">$profit</span></span><span> = </span><span><span class="hljs-title function_ invoke__">bcsub</span></span><span>(</span><span><span class="hljs-variable">$sales_price</span></span><span>, </span><span><span class="hljs-variable">$cost_price</span></span><span>, </span><span><span class="hljs-variable">$scale</span></span><span>); </span><span><span class="hljs-comment">// အရောင်းစျေးနှုန်း - စျေးစျေး</span></span><span>
</span><span><span class="hljs-variable">$profit_after_tax</span></span><span> = </span><span><span class="hljs-title function_ invoke__">bcsub</span></span><span>(</span><span><span class="hljs-variable">$profit</span></span><span>, </span><span><span class="hljs-variable">$tax</span></span><span>, </span><span><span class="hljs-variable">$scale</span></span><span>); </span><span><span class="hljs-comment">// အကျိုးကေျးဇူး - အခွန်</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 class="hljs-subst">$sales_price</span></span></span><span>\n";
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ပေးရ: <span class="hljs-subst">$cost_price</span></span></span><span>\n";
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"အခွန်: <span class="hljs-subst">$tax</span></span></span><span>\n";
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"အကျိုးကေျးဇူး: <span class="hljs-subst">$profit_after_tax</span></span></span><span>\n";
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>သတ်မှတ်ခြင်းတိကျစွာ - $ စကေး = 2 ကို သတ်မှတ်ခြင်းဖြင့်ရလဒ်သည်ဒ decimal မနေရာနှစ်ခုကျန်ရှိသည်ကိုကျွန်ုပ်တို့ဖော်ပြထားသည်။ ၎င်းသည်တွက်ချက်မှု၏ခြေလှမ်းတစ်ခုစီသည်မြင့်မားသောတိကျမှန်ကန်မှုကိုထိန်းသိမ်းထားနိုင်ပြီးမျောနေသည့်နံပါတ်စစ်ဆင်ရေးအမှားများကိုရှောင်ရှားနိုင်သည်။
အခွန်တွက်ချက်မှု - အခွန်နှုန်းထားများဖြင့်ရောင်းချခြင်းနှင့်အတိအကျအရအမြတ်အစွန်းများများပြန်ပေးရန် BCMUL function ကိုအသုံးပြုသည်။ အခွန်နှုန်းသည် 0.10 ဖြစ်ပြီး အခွန်၏ 10% ကိုဆိုလိုသည်။
အမြတ်တွက်ချက်မှု - အမြတ်အစွန်းတွက်ချက်တဲ့အခါကျွန်တော်တို့ဟာ BCSUB function ကိုအရင်သုံးပြီးရောင်းအားကုန်ကျစရိတ်ကိုနုတ်ဖို့,
သမားရိုးကျ floating-point operation တွင်ငွေကြေးကဲ့သို့သောမြင့်မားသောစစ်ဆင်ရေးများကိုတွက်ချက်သောအခါတိကျမှန်ကန်မှုမရှိသောပြ problems နာအချို့ကိုသင်မကြာခဏကြုံတွေ့ရလေ့ရှိသည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$price</span></span><span> = </span><span><span class="hljs-number">100.00</span></span><span>;
</span><span><span class="hljs-variable">$cost</span></span><span> = </span><span><span class="hljs-number">60.00</span></span><span>;
</span><span><span class="hljs-variable">$tax</span></span><span> = </span><span><span class="hljs-variable">$price</span></span><span> * </span><span><span class="hljs-number">0.10</span></span><span>;
</span><span><span class="hljs-variable">$profit</span></span><span> = </span><span><span class="hljs-variable">$price</span></span><span> - </span><span><span class="hljs-variable">$cost</span></span><span> - </span><span><span class="hljs-variable">$tax</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$profit</span></span><span>;
</span></span>ဤစစ်ဆင်ရေးနည်းလမ်းသည် floating-point နံပါတ်များကိုတိကျမှန်ကန်စွာကန့်သတ်ချက်ကြောင့်တိကျသောရလဒ်များဖြစ်ပေါ်စေနိုင်သည်။ BCSUB နှင့် BCMUL ကိုအသုံးပြုခြင်းသည်ရှုပ်ထွေးသောလုပ်ငန်းများ၌ပင်တိကျမှန်ကန်မှုကိုပျောက်ဆုံးသွားမည်မဟုတ်ကြောင်းသေချာစေနိုင်သည်။
PHP, BCSub နှင့် BCMUL တို့တွင်အထူးတိကျသောသင်္ချာတွက်ချက်မှုများအတွက်အစွမ်းထက်သောကိရိယာများအတွက်အစွမ်းထက်သောကိရိယာများအတွက်အထူးတိကျမှုလိုအပ်သည့်နေရာများတွင်အသုံးပြုရန်အတွက်အထူးသဖြင့်အသုံးပြုရန်သင့်လျော်သောကိရိယာများဖြစ်သည်။ တိကျမှန်ကန်မှုကိုသတ်မှတ်ချက်များကိုကျိုးကြောင်းဆီလျော်စွာသတ်မှတ်ခြင်းအားဖြင့်တွက်ချက်မှုအဆင့်တိုင်းတွင် rounding အမှားမရှိပါ, မမှန်ကန်သောအမြတ်တွက်ချက်မှုများကိုရှောင်ရှားရန်သင်သေချာပေါက်ရှိနိုင်သည်။