PHP တွင် ရီဂျူလာ အက်စ်ပရက်ရှင်းများဖြင့် ရှာဖွေခြင်း အိတ်ကပ်များ
ကျွန်ုပ်တို့တွင် ဒိုမိန်းပါရှိသော စာကြောင်းတစ်ခု ရှိသည်ဆိုကြပါစို့။
<?php
$str = 'eee site.ru bbb';
?>
ထိုဒိုမိန်းကို ရှာဖွေပြီး အပိုင်းများခွဲကြည့်ရအောင် - ဒိုမိန်းနာမည်နှင့် ၎င်း၏ ဇုန်ကို ခွဲထုတ်ပါ။ ထိုသို့လုပ်ဆောင်ရန် ရီဂျူလာ အက်စ်ပရက်ရှင်းများ၏ အထူး အိတ်ကပ်များကို အသုံးပြုပါမည်။
အိတ်ကပ်များသည် အခန်းကန့်များ၏ အစိတ်အပိုင်းများဖြစ်ပြီး ရီဂျူလာဖြင့် ရှာတွေ့သည့်အပိုင်းများကို ထည့်သွင်းထားနိုင်သည်။ ကျွန်ုပ်တို့၏ ဖြစ်ရပ်တွင် ပထမအိတ်ကပ်ထဲတွင် ဒိုမိန်းနာမည်ကို ထည့်နိုင်ပြီး ဒုတိယအိတ်ကပ်ထဲတွင် ၎င်း၏ ဇုန်ကို ထည့်နိုင်သည်။
ထိုသို့လုပ်ဆောင်ကြည့်ရအောင်။ စတင်ရန် စာကြောင်းထဲရှိ ဒိုမိန်းကို ရှာဖွေမည့် ရီဂျူလာကို ရေးကြည့်ပါမည်။
<?php
$reg = '#[a-z0-9_-]+\.[a-z]{2,}#';
?>
ယခုတွင် ကျွန်ုပ်တို့၏ ရီဂျူလာအတွင်း မည်သည့်အပိုင်းများက မည်သည့်အိတ်ကပ်ထဲသို့ ရောက်ရှိသင့်သည်ကို �တ်မှတ်ပါစို့။ ထိုသို့လုပ်ဆောင်ရန် ကွင်းလုံးများကို အသုံးပြုသည်။ ၎င်းတို့ကို အသုံးပြု၍ ဒိုမိန်းနာမည်ကို ရှာဖွေသည့် ရီဂျူလာ၏ အပိုင်းနှင့် ဒိုမိန်းဇုန်ကို ရှာဖွေသည့် အပိုင်းကို ခွဲထုတ်ကြည့်ရအောင်။
<?php
$reg = '#([a-z0-9_-]+)\.([a-z]{2,})#';
?>
ယခုတွင် preg_match လုပ်ဆောင်ချက်အတွင်း တတိယမြောက် ပါရာမီတာအဖြစ်
ကိန်းရှင် (မည်သည့်အမည်မဆို) ကို သတ်မှတ်ပါမည်။
<?php
preg_match($reg, $str, $res);
?>
သတ်မှတ်ထားသော ကိန်းရှင်ထဲသို့ ရှာတွေ့သည့် အိတ်ကပ်များပါရှိသော အခန်းကန့်တစ်ခု ရောက်ရှိလာမည်။ အခန်းကန့်၏ သုညမြောက် အစိတ်အပိုင်းတွင် ရှာတွေ့သည့် စာကြောင်းကို ထည့်သွင်းထားမည်၊ ပထမမြောက် အစိတ်အပိုင်းတွင် - ပထမအိတ်ကပ်၊ ဒုတိယမြောက် အစိတ်အပိုင်းတွင် - ဒုတိယအိတ်ကပ်စသည်ဖြင့် ရှိမည်။
<?php
preg_match($reg, $str, $res);
var_dump($res); // ['site.ru', 'site', 'ru'] ကို ဖော်ပြမည်
?>
ရက်စွဲပါရှိသော စာကြောင်းတစ်ခု ပေးထားသည်။
<?php
$str = '2025-12-31';
?>
နှစ်၊ လ နှင့် ရက်ကို သီးခြားအိတ်ကပ်များထဲတွင် ထည့်သွင်းပါ။
ဖိုင်အမည်ပါရှိသော စာကြောင်းတစ်ခု ပေးထားသည်။
<?php
$str = 'index.html';
?>
ဖိုင်အမည်နှင့် ၎င်း၏ ချဲ့ထွင်ချက်ကို သီးခြားအိတ်ကပ်များထဲတွင် ထည့်သွင်းပါ။