PHP sscanf() လုပ်ဆောင်ချက်
ဥပမာ
စာကြောင်းတစ်ခုကို ပိုင်းခြားရန်-
<?php
$str = "age:30 weight:60kg";
sscanf($str,"age:%d weight:%dkg",$age,$weight);
// show types and values
var_dump($age,$weight);
?>
sscanf() လုပ်ဆောင်ချက်သည် သတ်မှတ်ထားသော ဖော်မတ်တစ်ခုအရ စာကြောင်းတစ်ခုမှ ထည့်သွင်းမှုကို ခွဲခြမ်းစိပ်ဖြာသည်။ sscanf() လုပ်ဆောင်ချက်သည် ဖော်မတ်စာတစ်ကြောင်းအပေါ် အခြေခံ၍ လိုင်းတစ်ခုကို ကိန်းရှင်များအဖြစ် ပိုင်းခြားပေးသည်။
ကန့်သတ်ချက်နှစ်ခုသာ ဤလုပ်ဆောင်ချက်သို့ ကူးသွားပါက၊ ဒေတာကို ခင်းကျင်းတစ်ခုအဖြစ် ပြန်ပို့ပေးပါမည်။ မဟုတ်ပါက၊ ရွေးချယ်နိုင်သော ကန့်သတ်ဘောင်များကို ကျော်သွားပါက၊ ခွဲခြမ်းစိတ်ဖြာထားသည့် ဒေတာကို ၎င်းတို့တွင် သိမ်းဆည်းထားသည်။ ၎င်းတို့ကို ပါ၀င်ရန် ကိန်းရှင်များထက် အတိအကျသတ်မှတ်မှု ပိုများပါက အမှားအယွင်းတစ်ခု ဖြစ်ပေါ်သည်။ သို့ရာတွင်၊ ကိန်းရှင်များထက် အတိအကျသတ်မှတ်မှုနည်းပါက၊ အပိုကိန်းရှင်များတွင် NULL ပါဝင်ပါသည်။
ဆက်စပ်လုပ်ဆောင်ချက်များ-
- printf() - ဖော်မတ်ချထားသော စာကြောင်းကို ထုတ်သည်။
- sprintf() - ပုံစံချထားသော စာကြောင်းတစ်ခုကို ကိန်းရှင်တစ်ခုသို့ ရေးသည်။
အထားအသို
sscanf(string,format,arg1,arg2,arg++)
ကန့်သတ်တန်ဖိုးများ
Parameter | Description |
---|---|
string | Required. Specifies the string to read |
format | Required. Specifies the format to use. Possible format values:
Additional format values. These are placed between the % and the letter (example %.2f):
Note: If multiple additional format values are used, they must be in the same order as above. |
arg1 | Optional. The first variable to store data in |
arg2 | Optional. The second variable to store data in |
arg++ | Optional. The third, fourth, and so on, to store data in |
နည်းပညာဆိုင်ရာအသေးစိတ်
ပြန်ပို့တန်ဖိုး- | ကန့်သတ်ချက်နှစ်ခုသာ ဤလုပ်ဆောင်ချက်သို့ ကူးသွားပါက၊ ဒေတာကို ခင်းကျင်းတစ်ခုအဖြစ် ပြန်ပို့ပေးပါမည်။ မဟုတ်ပါက၊ ရွေးချယ်နိုင်သော ကန့်သတ်ဘောင်များကို ကျော်သွားပါက၊ ခွဲခြမ်းစိတ်ဖြာထားသည့် ဒေတာကို ၎င်းတို့တွင် သိမ်းဆည်းထားသည်။ ၎င်းတို့ကို ပါ၀င်ရန် ကိန်းရှင်များထက် အတိအကျသတ်မှတ်မှု ပိုများပါက အမှားအယွင်းတစ်ခု ဖြစ်ပေါ်သည်။ သို့ရာတွင်၊ ကိန်းရှင်များထက် အတိအကျသတ်မှတ်မှုနည်းပါက၊ အပိုကိန်းရှင်များတွင် NULL ပါဝင်ပါသည်။ |
---|---|
PHP ဗားရှင်း- | 4.0.1+ |
နောက်ထပ် ဥပမာများ
ဥပမာ
ဖော်မတ်တန်ဖိုးများ %s၊ %d နှင့် %c ကိုအသုံးပြုခြင်း-
<?php
$str = "If you divide 4 by 2 you'll get 2";
$format = sscanf($str,"%s %s %s %d %s %d %s %s %c");
print_r($format);
?>
❮ PHP String အကိုးအကား