PHP7 သည် developer များကို function တစ်ခုကြေငြာသောအခါ developer များကိုရှင်းလင်းစွာဖော်ပြရန်ခွင့်ပြုသည့်အမျိုးအစား hinting feature ကိုမိတ်ဆက်ပေးသည်။ ဤနည်းအားဖြင့်ကုဒ်ရေးသားသည့်အခါကျွန်ုပ်တို့သည်မိတ္တူကူးခြင်းအမှားများကိုရှောင်ရှားနိုင်သည်။
အသုံးပြုမှုအရိပ်အမြွက်၏အသုံးပြုမှုနည်းလမ်းသည်အလွန်ရိုးရှင်းပါသည်, function sendes ၏ parameters များကိုမကြုံမီအမျိုးအစားကြေငြာချက်ကိုသာထည့်ရန်လိုအပ်သည်။ ဒီမှာဥပမာတစ်ခုပါ။
<span class="fun">function calculatesum (INT $ a, int $ ခ): int {</span>
<span class="fun"> $ a + $ b ကိုပြန်သွားပါ။</span>
<span class="fun">}</span>
<span class="fun">$ ရလဒ် = တွက်ချက်မှုပေါင်းများစွာ (5, 10);</span>
<span class="fun">ECHO $ ရလဒ်, // output 15</span>
ဤဥပမာတွင်ကျွန်ုပ်တို့သည် parameters များကိုဒေါ်လာနှင့် $ B ကို Int အမျိုးအစားဖြင့်ကြေငြာသည်။ ဆိုလိုသည်မှာ parameters များကို calculatesum function ကိုဖြတ်သန်းသွားသော parameters များကိုကိန်းဂဏန်းအမျိုးအစားများဖြစ်ရမည်။
ကျွန်ုပ်တို့သည်အမျိုးအစားကြေငြာချက်နှင့်မကိုက်ညီသော parameter သည် parameter ကိုကျော်ဖြတ်ရန် PHP သည်စုစည်းစဉ်အတွင်းအမှားတစ်ခုဖြစ်လိမ့်မည်။ ဥပမာအားဖြင့်:
<span class="fun">$ ရလဒ် = တွက်ချက်မှုပေါင်းများစွာ (5, "10");</span>
အောက်ပါအမှားကိုပစ်ချလိမ့်မည်။
Fatal Error: uncrad routeError: roads 2 calculatesum () calculatesum သို့ဖြတ်သန်းရမည်ဖြစ်သည်
type type အရိပ်အမြွက်သည် scalar အမျိုးအစားများကို (ကိန်းဂဏန်းများ, ရေပေါ်မှတ်နံပါတ်များ, boolean တန်ဖိုးများစသဖြင့်) ကိုထောက်ပံ့ရုံသာမက boolean တန်ဖိုးများစသည်တို့) ကိုထောက်ပံ့သည်။ သို့သော် arrays များ, အရာဝတ်ထုများနှင့်ဓလေ့ထုံးစံများကိုလည်းအသုံးပြုနိုင်သည်။ ဥပမာအချို့ကိုဤတွင်ဖော်ပြထားသည်။
<span class="fun">function processarray (array $ ar arr): ပျက်ပြယ် {</span>
<span class="fun"> // အပြောင်းအလဲနဲ့ arrays</span>
<span class="fun">}</span>
<span class="fun">function processobmonobject (MyOBJOCT $ $ OBJ): ပျက်ပြယ် {</span>
<span class="fun"> // အပြောင်းအလဲနဲ့အရာဝတ်ထု</span>
<span class="fun">}</span>
<span class="fun">Class MyoBject {</span>
<span class="fun"> // လူတန်းစားအဓိပ္ပါယ်ဖွင့်ဆိုချက်</span>
<span class="fun">}</span>
<span class="fun">$ Myarray = [1, 2, 3];</span>
<span class="fun">Prolassarray ($ Myarray); // ပုံမှန်အလုပ်လုပ်သည်</span>
<span class="fun">$ myobject = အသစ် myoboject ();</span>
<span class="fun">Prolassobject ($ myobject); // ပုံမှန် run</span>
function parameters တွေကိုအမျိုးအစားကိုကြေငြာချက်အပြင်ရိုက်ကူးရေးဆွဲခြင်းကကျွန်တော်တို့ကို Return value function အမျိုးအစားကိုကြေငြာဖို့ခွင့်ပြုပါတယ်။ ဒီမှာဥပမာတစ်ခုပါ။
<span class="fun">function calculatesum (INT $ a, int $ ခ): int {</span>
<span class="fun"> $ a + $ b ကိုပြန်သွားပါ။</span>
<span class="fun">}</span>
<span class="fun">$ ရလဒ် = တွက်ချက်မှုပေါင်းများစွာ (5, 10);</span>
<span class="fun">ECHO $ ရလဒ်, // output 15</span>
ဤဥပမာတွင် function calculatesum သည် returnly value သည် integer (int) ဟုအတိအလင်းကြေငြာသည်။ function မှရရှိသောအမျိုးအစားသည်ကြေငြာထားသောအမျိုးအစားနှင့်မကိုက်ညီပါက PHP သည်အမှားအယွင်းတစ်ခုကိုပစ်လိမ့်မည်။
<span class="fun">function calculatesum (INT $ a, int $ ခ): int {</span>
<span class="fun"> "15" ပြန်လာ "15";</span>
<span class="fun">}</span>
<span class="fun">$ ရလဒ် = တွက်ချက်မှုပေါင်းများစွာ (5, 10);</span>
၎င်းသည်အောက်ပါအမှားကိုပစ်ချလိမ့်မည်။
Fatal Error: uncaults typeError: Returnatesumes ၏ returnated value () သည် type int ၏ type int ဖြစ်ရမည်
အမျိုးအစားအရိပ်အမြွက်သည် PHP7 မှမိတ်ဆက်ပေးသည့်အရေးကြီးသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ Parametersters နှင့် return function အမျိုးအစားများကိုအတိအလင်းသတ်မှတ်ခြင်းအားဖြင့် developer များကအလားအလာရှိသောအမှားများကိုထိရောက်စွာလျှော့ချပြီးကုဒ်အရည်အသွေးတိုးတက်ကောင်းမွန်အောင်ပြုလုပ်နိုင်သည်။