PHP ၏ string processing function များအကြား string နှင့် stropos များသည် မကြာခဏအသုံးပြုသောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ သူတို့ကနီးပါးအတူတူပဲ, တစ် ဦး တည်းသာဆိတ်ကွယ်ရာဆိတ်ကွယ်ရာကြည့်ရှုပေမယ့်တကယ်တော့အဓိကခြားနားချက်ရှိပါတယ်။ ဤဆောင်းပါးသည်သင်အသုံးပြုမှု, ကွဲပြားခြားနားမှုများ, ကြိုတင်ကာကွယ်မှုများစသဖြင့်ဤလုပ်ဆောင်မှုနှစ်ခုအကြားတူညီချက်များနှင့်ကွဲပြားခြားနားမှုများကိုစေ့စေ့စပ်စပ်နားလည်ရန်သင့်အားယူပါလိမ့်မည်။
Stropos နှင့် Strpos တို့သည် ပထမ string တစ်ခုတွင်ပထမ ဦး ဆုံးပေါ်လာသည့်နေရာကိုရှာဖွေရန်နှစ် ဦး စလုံးရှိသည်။ သူတို့ရဲ့အခြေခံ Syntax ကအောက်ပါအတိုင်းဖြစ်သည် -
strpos(string $haystack, mixed $needle, int $offset = 0): int|false
stripos(string $haystack, mixed $needle, int $offset = 0): int|false
$ haystack သည်ရှာဖွေရန်ပစ်မှတ် string ကိုဖြစ်သည်။
$ အပ် သည်ရှာဖွေရန်အလွှာဖြစ်သည်။
$ offset သည် optional ကိုရှာဖွေခြင်းကိုမည်သည့်နေရာတွင်စတင်မည်နည်း။
ဤသည်နှစ်ခုအကြားအကြီးမားဆုံးခြားနားချက်ဖြစ်ပါတယ်:
Stropos သည် စာလုံးအကြီးအသေးအရေးပါသည် ။
Stripos သည် ကိစ္စတွင် - အာရုံမခံစားနိုင်ပါ ။
<?php
$str = "Hello World";
var_dump(strpos($str, "world")); // ထုတ်လုပ်ခြင်း:bool(false)
var_dump(stripos($str, "world")); // ထုတ်လုပ်ခြင်း:int(6)
?>
ဤဥပမာတွင် strowos သည် မှားယွင်းသော ကြောင့်မှားယွင်းသောအရာဖြင့်ပြန်လှ ည့ ်သွားသည်။
လုပ်ဆောင်ချက်နှစ်ခုစလုံးသည် ကိန်းဂဏန်းများ (ပွဲစဉ်နေရာများ) သို့မဟုတ် မှားယွင်းသော (မတွေ့ပါ) ။ ကိုက်ညီသည့်အနေအထား 0 (ဆိုလိုသည်မှာအစတွင်အလွှာသည်အစတွင်ဖြစ်သည်) ကိုအသုံးပြုပြီး ကိုက်ညီမှုမအောင်မြင်ပါ။
if (strpos("abc", "a") == false) {
echo "မတွေ့ပါ";
}
output ကို "မတွေ့ပါ" ဖြစ်လိမ့်မည် - သို့သော်၎င်းကိုအမှန်တကယ်တွေ့ရှိရသည်။
if (strpos("abc", "a") === false) {
echo "မတွေ့ပါ";
}
အမြဲတမ်း congruent === ကို 0 င် 0 င် 0 င်လွဲမှားခြင်းကိုရှောင်ရှားရန် မှားယွင်း နေသည်ကိုဆုံးဖြတ်ရန်။
Stropos - အထိခိုက်မခံတဲ့စကားလုံးရှာဖွေတွေ့ရှိခြင်း,
Strips - သင်ရှာဖွေမှုကိုပိုမိုဖြေလျော့ပေးခြင်းကိုပိုမိုဖြေလျှော့လိုသည်,
<?php
$url = "https://gitbox.net/shop/product/123";
if (stripos($url, "/shop/") !== false) {
echo "ဒါကထုတ်ကုန်စာမျက်နှာတစ်ခုပါ";
}
?>
ဤဥပမာတွင် URL တွင်ပါ 0 င ် သည် , စျေးဝယ်ခြင်း / သော့ချက်စာလုံးများပါ 0 င်သည်ဖြစ်စေ,
အသုံးအများဆုံးအသုံးပြုမှုတွင်နှစ်ခုအကြားစွမ်းဆောင်ရည်ကွာဟချက်မှာအရေးမကြီးပါ။ အကယ်. သင်သည်ကြီးမားသောကွင်းဆက်တစ်ခုတွင်မကြာခဏခေါ်။ ကြိုးအရေအတွက်အထူးသဖြင့်ကြီးမားသည်ဆိုပါကအမှုပြောင်းလဲခြင်းလုပ်ငန်းစဉ်မရှိသောကြောင့် Stropos သည် အနည်းငယ်ပိုမိုမြန်ဆန်လိမ့်မည်။
စည်းလုံးညီညွတ်ရေးတရားစီရင်ပိုင်ခွင့်ပြုရန် strpos နှင့် strpos ၏ပြန်လာတန်ဖိုးများကိုမရောထွေးပါနှင့်,
အကယ်. သင်၏ရှာဖွေရေးယုတ္တိဗေဒသည်အသုံးပြုသူ input ပေါ်တွင်မူတည်ပါက strips များကို တတ်နိုင်သမျှအမြန်ဆုံးအသုံးပြုရန်ကြိုးစားပါ။
အသုံးပြုမှု === false match ပျက်ကွက်ခြင်းရှိမရှိဆုံးဖြတ်ရန်အတွက်ဆုံးဖြတ်ရန်, ဒီလိုမှမဟုတ်ရင်အနေအထား 0 ကအလွယ်တကူလမ်းလွဲသွားလိမ့်မည်။
function name | ကစာလုံးအကြီးအသေးရှိမရှိ | Value အမျိုးအစားကိုပြန်သွားပါ | ကြည့်ရှုပါ |
---|---|---|---|
လမ်းစောင်း | ဟုတ်ကဲ့ | Int သို့မဟုတ်မှားယွင်းသော | တိကျစွာကိုက်ညီတဲ့မြင်ကွင်းများ, တင်းကြပ်စွာဖြစ်ရပ်မှန် - အထိခိုက်မခံ |
မြဲမြံ | မဟုတ် | Int သို့မဟုတ်မှားယွင်းသော | ထိထိရောက်ရောက်ကြည့်ရှုရန်အခြေအနေများ, |
Stropos နှင့် Strpos သည်စာလုံးအသေးတစ်ခုသာဖြစ်သော်လည်းနောက်ကွယ်ရှိယုတ္တိဗေဒသည်သင်လိုချင်သောရလဒ်ကိုရှာဖွေနိုင်မနိုင်သလားဆိုသည်ကိုဆုံးဖြတ်သည် ။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်သူတို့ကိုရွေးချယ်ခြင်းသည်သင့်အားကျိုးကြောင်းဆီလျော်စွာရွေးချယ်ခြင်းသည်အမှားအယွင်းများစွာကိုရှောင်ရှားနိုင်သည်။ ဒီဆောင်းပါးကသူတို့အကြားခြားနားချက်ကိုတကယ်နားလည်အောင်နားလည်နိုင်ပေးနိုင်ပါတယ်။ နောက်တစ်ကြိမ်တွင်ကုဒ်ရေးရန်တွန့်ဆုတ်မည်မဟုတ်!