PHP တွင် Sprintf function သည်ကြိုးများကိုပုံစံချရန်အလွန်အသုံးများသောကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည်ပုံစံချထားသောကြိုးနှင့် parameters တွေကိုလက်ခံပြီး formatted string ကိုပြန်ပို့သည်။ သို့သော်အမှန်တကယ်အသုံးပြုစဉ်အတွင်းကျွန်ုပ်တို့သည်ဘုံအမှားတစ်ခုနှင့်ကြုံတွေ့ရနိုင်သည်။ ဤပြ problem နာသည်များသောအားဖြင့် PHP သည်မျှော်လင့်ထားသည့်အရာနှင့်မကိုက်ညီသောရလဒ်ကိုသတိပေးခြင်းသို့မဟုတ်ပြန်ပေးခြင်းကိုဖြစ်ပေါ်စေသည်။
Sprintf function ၏အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -
sprintf($format, $arg1, $arg2, ...);
၎င်းတို့အနက် $ arg1 , $ arc. ကဲ့သို့သော formalholders များပါ 0 င်သည့် formatt လုပ်ထားသော string တစ်ခုဖြစ်ပြီး $ arg1 , $ arg2 စသည်တို့ဖြစ်သည်။
ဥပမာအားဖြင့်, အောက်ပါကုဒ်:
$formatted_string = sprintf("Hello %s, you have %d new messages", "John", 5);
echo $formatted_string;
output ကို:
Hello John, you have 5 new messages
$ format string အတွက် placeholders အရေအတွက်နှင့်မကိုက်ညီသောအခါအမှားတစ်ခုသို့မဟုတ်သတိပေးချက်ဖြစ်ပေါ်လာသည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည် placeholders နှစ်ခုကိုဖြတ်သန်းသွားသော်လည်းတစ်ပြိုင်နက်တည်း parameter ကိုသာပေးချေသည်ဆိုပါစို့။
$formatted_string = sprintf("Hello %s, you have %d new messages", "John");
ဤကုဒ်သည်အောက်ပါအမှားသို့မဟုတ်သတိပေးချက်ကိုဖြစ်ပေါ်စေလိမ့်မည်။
Warning: sprintf(): Too few arguments in...
များသောအားဖြင့်ကျွန်ုပ်တို့သည် placeholder နှင့်လိုက်လျောညီထွေဖြစ်အောင် parameters တွေကိုမှန်မှန်ကန်ကန်မသွားနိုင်,
Placewers နှင့် Parameter သည်ပွဲစဉ်ရေတွက်ကြောင်းသေချာပါစေ
တိုက်ရိုက်ဖြေရှင်းနည်းမှာ Formatted string တွင် platholders အရေအတွက်သည် passed လုပ်ထားသော parameters ည့်သည်အရေအတွက်နှင့်ကိုက်ညီစေရန်သေချာစေရန်ဖြစ်သည်။ format string တွင် placeholders နှစ်ခုရှိလျှင် parameter နှစ်ခုကိုသေချာအောင်လုပ်ပါ။
$formatted_string = sprintf("Hello %s, you have %d new messages", "John", 5);
parameters တွေကိုတရားဝင်ဖြစ်ကြောင်းသေချာစေရန်အခြေအနေစစ်ဆေးမှုများကိုသုံးပါ
Sprintf မခေါ်မီ, သင်ပျောက်ဆုံးနေသောသို့မဟုတ်မလိုအပ်သော parameters တွေကိုသေချာစေရန် FunC_Num_args ကဲ့သို့သောလုပ်ဆောင်မှုများမှတစ်ဆင့် 0 င်လာသည့် parameter များကိုစစ်ဆေးနိုင်သည်။
if (func_num_args() >= 2) {
$formatted_string = sprintf("Hello %s, you have %d new messages", "John", 5);
} else {
echo "Insufficient arguments!";
}
ပျောက်ဆုံးနေသော parameterster များအတွက်ပုံမှန်တန်ဖိုးများကိုသတ်မှတ်ပါ
အကယ်. သင်၏ formatted strings များသည်အချို့သော parameters များပျောက်ဆုံးနေပါက Sprintf ဟုခေါ်သည့်အခါ၎င်းတို့အတွက်ပုံမှန်တန်ဖိုးများကိုသတ်မှတ်နိုင်သည်။ ဥပမာအားဖြင့်, သင်က parameter သည် optional ဖြစ်ရန်မျှော်လင့်ပါက၎င်းကိုကိုင်တွယ်ရန် ternary အော်ပရေတာကိုသုံးနိုင်သည်။
$messages = 5;
$formatted_string = sprintf("Hello %s, you have %d new messages", "John", $messages ?: 0);
@ operator ကို အသုံးပြု. သတိပေးချက်များကိုဖိနှိပ်ခြင်း (မထောက်ခံပါ)
အကယ်. သင်သည်သတိပေးချက်များကိုလျစ်လျူရှုပြီးသင်၏ကုဒ်ကိုဆက်လက်လုပ်ဆောင်လိုပါကအမှားကိုဖိနှိပ်ရန် sprintf function ခေါ်ဆိုမှုမတိုင်မီ @ သင်္ကေတကိုသုံးနိုင်သည်။
@sprintf("Hello %s, you have %d new messages", "John");
မှတ်စု: ဤနည်းလမ်းသည်သတိပေးချက်များကိုဖယ်ရှားနိုင်သော်လည်း၎င်းသည် Parameter Mismatch ၏ပြ problem နာကိုမဖြေရှင်းနိုင်ပါ။
debug output ကို
Parameters အရေအတွက်နှင့်မကိုက်ညီသောအဘယ်ကြောင့်မကိုက်ညီပါကသင်ပြ the နာကို Debug သို့မခေါ်မီသင်သည် Prolrintf မှပုံနှိပ်ထုတ်လွှင့်နိုင်သည့် parameter များကိုပုံနှိပ်နိုင်သည်။
var_dump(func_get_args());
$formatted_string = sprintf("Hello %s, you have %d new messages", "John");
Sprintf function သည်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သော်လည်း format string တွင် placevers သည်တင်းကြပ်စွာဖြင့်ဖြတ်သန်းသွားရန်အတွက် parameters များသို့မဟုတ်အမှားအယွင်းများကိုရှောင်ရှားရန်အောက်ပါနည်းလမ်းများကိုရှောင်ရှားရန်အောက်ပါနည်းလမ်းများကိုရှောင်ရှားရန်အောက်ပါနည်းလမ်းများကိုရှောင်ရှားရန်အောက်ပါနည်းလမ်းများကိုရှောင်ရှားရန်အောက်ပါနည်းလမ်းများကိုရှောင်ရှားရန်အောက်ပါနည်းလမ်းများကိုရှောင်ရှားရန်။
placewers နှင့် parameters တွေကို parameters တွေကိုနှင့်ကိုက်ညီကြောင်းသေချာပါစေ,
သတ်မှတ်ချက်များ၏တရားဝင်မှုကိုအတည်ပြုရန်အခြေအနေစစ်ဆေးမှုများကိုသုံးပါ။
ပျောက်ဆုံးနေသော parameterster များအတွက်ပုံမှန်တန်ဖိုးများကိုသတ်မှတ်;
@ သင်္ကေတဖိနှိပ်မှုအမှားများကိုအသုံးပြုခြင်းကိုရှောင်ပါ။
ဤနည်းလမ်းများဖြင့် Sprintf ကို အသုံးပြုခြင်းနှင့်သင်၏ကုဒ်၏အဆင်ကိုတိုးတက်အောင်ပြုလုပ်သောအခါသာမန်အမှားများကိုရှောင်ရှားနိုင်သည်။