လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP တွင် CEIL () Function သည်အဘယ်ကြောင့် PHP တွင်လုပ်ဆောင်မှုကိုပြသသည့်အခါအမှားတစ်ခုဖြစ်သနည်း။ ဤပြ problem နာကိုအဘယ်နည်းလမ်းများကမှရှောင်ရှားနိုင်သနည်း။

PHP တွင် CEIL () Function သည်အဘယ်ကြောင့် PHP တွင်လုပ်ဆောင်မှုကိုပြသသည့်အခါအမှားတစ်ခုဖြစ်သနည်း။ ဤပြ problem နာကိုအဘယ်နည်းလမ်းများကမှရှောင်ရှားနိုင်သနည်း။

M66 2025-07-10

PHP ပရိုဂရမ်တွင် ceil () function သည် floating point နံပါတ်ကိုပတ်ရန်အသုံးပြုသောအလွန်အသုံးများသောသင်္ချာဆိုင်ရာလုပ်ဆောင်မှုဖြစ်သည်။ ဥပမာအားဖြင့်:

 echo ceil(4.3); // ထုတ်လုပ်ခြင်း 5

အကယ်. ကျွန်ုပ်တို့သည် မတော်တဆ တိုက်ပွဲဝင်ခြင်းကိုမတော်တဆအကောင်အထည်ဖော်နိုင်ပါကကျွန်ုပ်တို့သည်အမှားတစ်ခုဖြစ်ပြီး "Parameter" သို့မဟုတ် "parameter သည် floating parameter" ဖြစ်ရမည် "ဟုကျွန်ုပ်တို့အားကြုံတွေ့ရလိမ့်မည်။ ဘာဖြစ်လို့လဲဆိုတော့ Ceil () function ကနံပါတ်တစ်ခုတည်း (Scalar type) တစ်ခုတည်းကိုသာလုပ်လို့ရလို့ပါ။

CEIL () function သည်အဘယ်ကြောင့် array တစ်ခုတွင်လုပ်ဆောင်သောအခါအမှားတစ်ခုဖြစ်သနည်း။

စီil () function ၏အဓိပ္ပါယ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 float ceil(float $value)

၎င်း၏မျှော်လင့်ထားသည့် parameter သည် floating point နံပါတ်သို့မဟုတ် palar value တစ်ခုဖြစ်ပြီး floating point နံပါတ်များသို့ပြောင်းလဲနိုင်ပြီး stoating point နံပါတ်များအဖြစ်ပြောင်းလဲနိုင်ပြီး,

အမှားအယွင်းဖြစ်စေသည့်ဥပမာကုဒ်:

 $values = [4.2, 5.8, 3.1];
$result = ceil($values); // အမှားတစ်ခုသတင်းပို့ပါလိမ့်မယ်:အဆိုပါ parameters တွေကိုဖြစ်ရပါမည်float,array မဖြစ်နိုင်ဘူး

ဤကုဒ်ကိုကွပ်မျက်သည့်အခါ, အောက်ပါအမှားများကိုအစီရင်ခံလိမ့်မည်။

 Warning: ceil() expects parameter 1 to be float, array given

ထို့ကြောင့်ကျွန်ုပ်တို့သည် ceil () array များပြုလုပ်ရန်တိုက်ရိုက်မသုံးနိုင်ပါ။

ဒီအမှားကိုဘယ်လိုရှောင်မလဲ။ အဘယ်အခြားနည်းလမ်းများရှိသနည်း

အကယ်. CEIL () function ကို areas တစ်ခုစီအတွက် element တစ်ခုစီအတွက်အသုံးချလိုပါကအလေ့အကျင့်များစွာရှိသည်။

1 ။ array_map () function ကိုသုံးပါ

Array_map () သည် ခင်းကျင်းမှု၏ element တစ်ခုစီတွင်သတ်မှတ်ထားသော callback function ကိုခေါ်ဆိုနိုင်ပြီးလုပ်ငန်းစဉ်ခင်းကျင်းမှုကိုပြန်ပို့နိုင်သည်။

နမူနာကုဒ်:

 $values = [4.2, 5.8, 3.1];
$ceiledValues = array_map('ceil', $values);
print_r($ceiledValues);

ထုတ်လုပ်မှု -

 Array
(
    [0] => 5
    [1] => 6
    [2] => 4
)

ဤသည်ရိုးရှင်းသောနှင့်စွမ်းဆောင်ရည်နည်းလမ်းဖြစ်ပါတယ်။

2 ။ ခင်းကျင်းရန်ကွင်းဆက်သို့ကွင်းဆက်တစ်ခုကို သုံး. ၎င်းကိုတစ်ခုဖြင့်ပြုလုပ်ပါ

အကယ်. သင်သည် functoral programming နည်းလမ်းများကိုအသုံးမပြုလိုပါကရိုးရာ foreach traversal ကိုသုံးနိုင်သည်။

 $values = [4.2, 5.8, 3.1];
$ceiledValues = [];
foreach ($values as $value) {
    $ceiledValues[] = ceil($value);
}
print_r($ceiledValues);

အဆိုပါအကျိုးသက်ရောက်မှု array_map () နှင့်အတူတူပါပဲ။

3 ။ array_map နှင့်ပူးပေါင်းဆောင်ရွက်ရန်အမည်မသိလုပ်ဆောင်ချက်များကိုသို့မဟုတ်ပိတ်ပစ်ကိုသုံးပါ ()

အကယ်. သင်သည်ပိုမိုရှုပ်ထွေးသောဒြပ်စင်များကိုပိုမိုရှုပ်ထွေးစေရန်လိုအပ်ပါကအမည်မဖော်လိုသောလုပ်ဆောင်ချက်များတွင်သင်အောင်မြင်နိုင်သည်။

 $values = [4.2, 5.8, 3.1];
$ceiledValues = array_map(function($val) {
    return ceil($val);
}, $values);
print_r($ceiledValues);

၎င်းသည်ရိုးရှင်းသော ceil လုပ်ဆောင်မှုများအတွက်မလိုအပ်သောကြောင့်ရှုပ်ထွေးသောလိုအပ်ချက်များအောက်တွင်အလွန်ပြောင်းလွယ်ပြင်လွယ်ရှိပုံရသည်။

အကျဉ်းချုပ်

  • CEIL () function သည် floating point နံပါတ်တစ်ခုကိုသာလက်ခံနိုင်ပြီးခင်းကျင်းခြင်းမပြုလုပ်နိုင်ပါ။

  • ceil () ကို array ရှိ element တစ်ခုစီကိုသုံးပါ။ array_map (ceil ', $ array ကို သုံးရန်အကြံပြုသည်။

  • ရိုးရာကွင်းသည်တူညီသောလုပ်ဆောင်မှုကိုအကောင်အထည်ဖော်နိုင်သည်

  • အမှန်တကယ်လိုအပ်ချက်များအရအမည်မသိ function ကို array_map () နှင့်ပူးပေါင်းဆောင်ရွက်ရန်လည်းအသုံးပြုနိုင်သည်။

၎င်းသည်အမျိုးအစားအမှားများကိုရှောင်ရှားရန်သာမကကုဒ်ကိုပိုမိုဖတ်ရှုနိုင်ပါသည်။