ဖန်ရှင် sscanf
ဖန်ရှင် sscanf သည် သတ်မှတ်ပေးထားသော format ကို အသုံးပြု၍ string တစ်ခုကို ခွဲခြမ်းစိတ်ဖြာကာ တန်ဖိုးများကို ပြန်ပေးသည်။ ပထမသတ်မှတ်ချက် (parameter) အဖြစ် ဖန်ရှင်သည် ခွဲခြမ်းစိတ်ဖြာရန် string တစ်ခုကို လက်ခံပြီး၊ ဒုတိယသတ်မှတ်ချက်မှာ format string ဖြစ်ကာ၊ နောက်ထပ်သတ်မှတ်ချက်များ (မဖြစ်မနေထည့်ရန် မလိုအပ်ပါ) မှာ ခွဲခြမ်းစိတ်ဖြာမှု ရလဒ်များ ရေးမှတ်မည့် variable များ ဖြစ်သည်။
Format string အတွင်း၌ အထူးသင်္ကေတများ (format specifiers) ကို အသုံးပြုထားပြီး ၎င်းတို့သည် % သင်္ကေတဖြင့် စတင်ကာ output ဖော်ပြချက်ကို ထိန်းချုပ်ပေးသည်။
ဖွဲ့စည်းပုံ
sscanf(string $str, string $format [, mixed &$... ]): mixed
Format Specifiers များ
| Specifier | ဖော်ပြချက် |
|---|---|
%s |
String |
%d |
လက္ခဏာပါသော ကိန်းပြည့် (ဒဿမ) |
%u |
လက္ခဏာမပါသော ကိန်းပြည့် (ဒဿမ) |
%f |
ဒဿမကိန်း (locale-အမှီပြု) |
%F |
ဒဿမကိန်း (locale-အမှီမပြု) |
%c |
ASCII-code အလိုက် အက္ခရာ |
%x |
ဆယ်ခြောက်လုံးစနစ်ရှိ ကိန်းပြည့် (စာလုံးအသေး) |
%X |
ဆယ်ခြောက်လုံးစနစ်ရှိ ကိန်းပြည့် (စာလုံးအကြီး) |
%o |
ရှစ်လုံးစနစ်ရှိ ကိန်းပြည့် |
%b |
နှစ်လုံးစနစ်ရှိ ကိန်းပြည့် |
%e |
သိပ္ပံဆိုင်ရာ ဖော်ပြချက် (စာလုံးအသေး) |
%E |
သိပ္ပံဆိုင်ရာ ဖော်ပြချက် (စာလုံးအကြီး) |
%g |
%e (သို့မဟုတ်) %f ၏ တိုတောင်းသော ဖော်ပြချက် |
%G |
%E (သို့မဟုတ်) %F ၏ တိုတောင်းသော ဖော်ပြချက် |
%% |
ရာခိုင်နှုန်း သင်္ကေတ |
ဥပမာ
ကိန်းတစ်ခုနှင့် စာသားကို ထုတ်ယူရန် string တစ်ခုကို ဖြတ်တောက်ကြည့်ပါမည်။
<?php
$res = sscanf("42 is the answer", "%d is %s");
print_r($res);
?>
ကုဒ်ကို လုပ်ဆောင်ခြင်း၏ ရလဒ်။
[42, 'the']
ဥပမာ
ရက်စွဲတစ်ခုကို ၎င်း၏ အစိတ်အပိုင်းများအဖြစ် ခွဲခြမ်းကြည့်ပါမည်။
<?php
$date = "2023-12-31";
list($year, $month, $day) = sscanf($date, "%d-%d-%d");
echo "Year: $year, Month: $month, Day: $day";
?>
ကုဒ်ကို လုပ်ဆောင်ခြင်း၏ ရလဒ်။
'Year: 2023, Month: 12, Day: 31'