လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> အီးစ်၏ဒုတိယ parameter အမျိုးအစားကိုမည်သို့အသုံးပြုရမည်နည်း။ strings နှင့် array အကြားခြားနားချက်၏အသေးစိတ်ရှင်းပြချက်

အီးစ်၏ဒုတိယ parameter အမျိုးအစားကိုမည်သို့အသုံးပြုရမည်နည်း။ strings နှင့် array အကြားခြားနားချက်၏အသေးစိတ်ရှင်းပြချက်

gitbox 2025-09-12
<span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// ဤအပိုင်းသည်ဆောင်းပါး၏အကြောင်းအရာနှင့်မသက်ဆိုင်ပါ,၎င်းသည်ပရိုဂရမ်တစ်ခုသို့မဟုတ်အခြားအရာတစ်ခုခုကိုစတင်နိုင်သည်</span></span><span>
</span><span><span class="hljs-comment">// ဥပမာအားဖြင့်, အချိန်ဇုန် setting ကို</span></span><span>
</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);
</span><span><span class="hljs-meta">?&gt;</span></span><span>

&lt;hr&gt;

</span><span><span class="hljs-meta">&lt;?php</span></span><span>
<span class="hljs-comment">/**
 * stristrဒုတိယ parameter သည် function ကိုအသုံးပြုနည်း?
 * strings နှင့် array အကြားခြားနားချက်၏အသေးစိတ်ရှင်းပြချက်
 *
 * တည်နေPHPအလယ်ပိုင်း,stristr函数用于တည်နေ字符串အလယ်ပိုင်း查找某个子串,နှင့် string ကို၏အဆုံးမှအလွှာ၏ပထမ ဦး ဆုံးဖြစ်ပျက်မှုမှအပိုင်းကိုပြန်သွားပါ。
 * ၎င်း၏အခြေခံအသုံးပြုမှုဖြစ်ပါတယ်:
 * string stristr(string $haystack, string $needle, bool $before_needle = false)
 * 其အလယ်ပိုင်း:
 * - $haystack အဆိုပါ string ကိုရှာဖွေလျက်ရှိသည်
 * - $needle တွေ့ရှိရမည့် string ကိုဖြစ်ပါတယ်
 * - $before_needle မလုပ်မနေရမဟုတ်သော,လှျင်true,ထို့နောက်ပြန်လာပါneedleယခင်အစိတ်အပိုင်း
 *
 * မည်မှျပင်,တချို့ developer များရှုပ်ထွေးလိမ့်မည်:stristrဒုတိယ parameter သည်ခင်းကျင်းတစ်ခုသို့ကူးနိုင်သလား?သို့မဟုတ် string ကိုဖြတ်သန်းနှင့် string ကိုဖြတ်သန်းအကြားခြားနားချက်ကဘာလဲ?
 *
 * တစ်、stristrဒုတိယ parameter သည် type type ကန့်သတ်
 * stristrfunction ၏ဒုတိယ parameter သည် string type အမျိုးအစားဖြစ်ရမည်,arrays မသွားနိုင်ဘူး。တစ်ခုခင်းကျင်းအတွက်ဖြတ်သန်းလျှင်,PHPအမှားတစ်ခုသတင်းပို့ပါလိမ့်မယ်:
 * Warning: stristr() expects parameter 2 to be string, array given
 *
 * ထိုကေြာင့်,တင်းကြပ်စွာစကားပြော,stristrကြိုးများကိုသာဒုတိယ parameter သည်လက်ခံသည်。
 *
 * နှစ်、အဘယ်ကြောင့် arrays ဖြတ်သန်းခြင်း၏နားလည်မှုလွဲနေသည်?
 * အချို့သောအခြေအနေများတွင်,开发者想用多个关键词去搜索字符串是否包含其အလယ်ပိုင်း任意တစ်个,လှျင်stristr只能တစ်次查တစ်个字符串。
 * အခုအချိန်တွင်,ဘုံအလေ့အကျင့်သည်သော့ချက်စာလုံးများစွာကိုသိုလှောင်ရန် arrays များကိုအသုံးပြုရန်ဖြစ်သည်,然后遍历数组逐တစ်调用stristrပွဲစဉ်အောင်。
 *
 * သုံး、Multi-keyword ကိုက်ညီမှုကိုဘယ်လိုအောင်မြင်ရမလဲ(Array Effect ကို Simulate)
 * နမူနာကုဒ်အတိုင်းအောက်ပါအတိုင်းဖြစ်သည်:
 */</span>

</span><span><span class="hljs-variable">$keywords</span></span><span> = [</span><span><span class="hljs-string">'apple'</span></span><span>, </span><span><span class="hljs-string">'banana'</span></span><span>, </span><span><span class="hljs-string">'orange'</span></span><span>];
</span><span><span class="hljs-variable">$text</span></span><span> = </span><span><span class="hljs-string">"I like banana and orange juice."</span></span><span>;

</span><span><span class="hljs-variable">$found</span></span><span> = </span><span><span class="hljs-literal">false</span></span><span>;
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$keywords</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$word</span></span><span>) {
    </span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">stristr</span></span><span>(</span><span><span class="hljs-variable">$text</span></span><span>, </span><span><span class="hljs-variable">$word</span></span><span>) !== </span><span><span class="hljs-literal">false</span></span><span>) {
        </span><span><span class="hljs-variable">$found</span></span><span> = </span><span><span class="hljs-variable">$word</span></span><span>;
        </span><span><span class="hljs-keyword">break</span></span><span>;
    }
}

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$found</span></span><span> !== </span><span><span class="hljs-literal">false</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"သော့ချက်စာလုံးများကိုရှာပါ:<span class="hljs-subst">$found</span></span></span><span>\n";
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"没有သော့ချက်စာလုံးများကိုရှာပါ。\n"</span></span><span>;
}

<span class="hljs-comment">/**
 * လေး、အကျဉ်းချုပ်
 * - stristr的第နှစ်个参数必须是字符串,array ကိုတိုက်ရိုက်ဖြတ်သန်းလို့မရဘူး。
 * - မျိုးစုံသော့ချက်စာလုံးကိုက်ညီလိုအပ်ပါက,သင်ကိုယ်တိုင်ခင်းကျင်းမှတဆင့်ကွင်းဆက်နိုင်ပါတယ်,တ ဦး တည်းအားဖြင့်ခေါ်ပါstristrတရားစီရင်ချက်。
 * - 这样可以灵活地တရားစီရင်ချက်字符串是否包含任တစ်多个关键词。
 *
 * ငါး、အခြားဆက်စပ်လုပ်ဆောင်ချက်များကို
 * - stripos: အမှု၌ string ကိုတည်နေရာရှာပါ,第နှစ်个参数也是字符串。
 * - preg_match: Multi-keyword ကိုက်ညီမှုကိုပုံမှန်ဖော်ပြခြင်းဖြင့်လည်းအောင်မြင်နိုင်သည်,ဥပမာအားဖြင့်သုံးပါpattern /(apple|banana|orange)/i。
 *
 * အထက်ပါဖြစ်ကြသည်stristr函数第နှစ်个参数的类型用法及字符串和数组区别的详细说明与示例。
 */</span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>