လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> YouTube ဗီဒီယို ID ကို Parse_URL နှင့် Extract လုပ်နည်း။

YouTube ဗီဒီယို ID ကို Parse_URL နှင့် Extract လုပ်နည်း။

gitbox 2025-05-29

ဗွီဒီယိုလင့်များကိုထုတ်ဖော်ပြောဆိုသည့်အခါ, အထူးသဖြင့် YouTube ကဲ့သို့သောပလက်ဖောင်းများမှာဗွီဒီယိုတစ်ခု၏ထူးခြားသောအမှတ်အသား (ဗီဒီယို ID) ကိုထုတ်ယူခြင်းသည် application တစ်ခုတွင်ဘုံလိုအပ်ချက်ဖြစ်သည်။ ဥပမာအားဖြင့်ဗွီဒီယိုအိုင်ဒီကိုသာဆက်လက်ထိန်းသိမ်းထားခြင်းသည်သင်အသုံးပြုသူတင်ပြထားသော Youtube link ကိုဝက်ဘ်စာမျက်နှာတစ်ခုသို့သို့မဟုတ်ဒေတာဘေ့စ်သို့သိမ်းဆည်းရန်သို့မဟုတ်ထည့်သွင်းလိုသောအခါပိုမိုထိရောက်စေသည်။ PHP တွင်ကျွန်ုပ်တို့သည်ဤလုပ်ဆောင်မှုကိုအကောင်အထည်ဖော်ရန်အတွက် built-in parse_url function ကိုသုံးနိုင်သည်။

ဤဆောင်းပါးသည် Parse_url ကို အခြားလုပ်ဆောင်ချက်များကိုပေါင်းစပ်ခြင်းဖြင့် YouTube Links မှဗီဒီယို ID မှထုတ်ယူနည်းကိုမိတ်ဆက်ပေးလိမ့်မည်။

1 ။ YouTube link format နဲ့

လက်တွေ့ကျသော application များတွင် YouTube ၏ Link ပုံစံတွင်အောက်ပါပုံစံများရှိနိုင်သည်။

  1. စံ link:

     https://www.youtube.com/watch?v=VIDEO_ID
    
  2. link တို:

     https://youtu.be/VIDEO_ID
    
  3. embed link:

     https://www.youtube.com/embed/VIDEO_ID
    

2 ။ သတင်းအချက်အလက်ကိုထုတ်ယူရန် Parse_url ကို သုံးပါ

Parse_url function သည်အစီအစဉ်, အိမ်ရှင်, လမ်းကြောင်း,

 function extractYouTubeID($url) {
    $parsedUrl = parse_url($url);

    // စံ link https://www.youtube.com/watch?v=VIDEO_ID
    if (isset($parsedUrl['host']) && strpos($parsedUrl['host'], 'youtube.com') !== false) {
        if (isset($parsedUrl['path']) && $parsedUrl['path'] === '/watch') {
            if (isset($parsedUrl['query'])) {
                parse_str($parsedUrl['query'], $queryParams);
                if (isset($queryParams['v'])) {
                    return $queryParams['v'];
                }
            }
        }

        // embed link ကို https://www.youtube.com/embed/VIDEO_ID
        if (strpos($parsedUrl['path'], '/embed/') === 0) {
            return substr($parsedUrl['path'], strlen('/embed/'));
        }
    }

    // link တို https://youtu.be/VIDEO_ID
    if (isset($parsedUrl['host']) && $parsedUrl['host'] === 'youtu.be') {
        return ltrim($parsedUrl['path'], '/');
    }

    return null; // အသိအမှတ်မပြု format များ
}

3 ။ ဥပမာအသုံးပြုမှု

 $links = [
    'https://www.youtube.com/watch?v=abc123XYZ',
    'https://youtu.be/abc123XYZ',
    'https://www.youtube.com/embed/abc123XYZ',
    'https://gitbox.net/watch?v=abc123XYZ', // မဟုတ် YouTube ဒိုမိန်းအမည်,ပြန်လာသင့်တယ် null
];

foreach ($links as $link) {
    $videoId = extractYouTubeID($link);
    echo "သံကွင်းဆက်:$link\n";
    echo "ဗီဒီယိုချက်ချက် ID:" . ($videoId ?? 'ဖော်ထုတ်မရ') . "\n\n";
}

4 ။ မှတ်စုများ

  • အထက်ဖော်ပြပါကုဒ်သည်ဘုံလင့်ခ်သုံးမျိုးပုံစံများကိုစဉ်းစားသည်။ ကြံ့ခိုင်မှုကိုတိုးတက်စေရန်အတွက် parse_str.str ပြီးနောက် parameters တွေကို parameters တွေကိုအပေါ်ပိုမိုရှင်းလင်းစွာစစ်ဆေးနိုင်ပါသည်။

  • ယုံကြည်စိတ်ချရသောရင်းမြစ်များကိုသာဆောင်ရွက်ရန်အတွက်ဒိုမိန်းအမည်များကိုအစားထိုးခြင်းသို့မဟုတ် YouTube မဟုတ်သောလင့်များကိုခွဲခြားသိမြင်သောအခါအထူးဂရုပြုပါ။

ကောက်ချက်

Parse_Url နှင့် Parse_str.Str_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_STR_SP ) ကဲ့သို့သော built-in functions များဖြင့် built-in functions များဖြင့်ပြုလုပ်နိုင်သည်။ ဤနည်းလမ်းသည်ရိုးရှင်းရုံသာမကကောင်းမွန်သောထိန်းသိမ်းမှုရှိသည်။ စီမံကိန်းအမျိုးမျိုးတွင်ပြန်လည်အသုံးပြုရန်နှင့်ဖွံ့ဖြိုးတိုးတက်မှုထိရောက်မှုကိုတိုးတက်စေနိုင်သောအထွေထွေ function ကို encapsate ။