Mengubah Link Url YouTube Menjadi Embed Code Dengan RegExr PHP

Sebagai seorang programmer pernah enggak sih kalian mengalami yang harusnya orang menginputkan embed code YouTube, tapi data yang diinput malah url code? Kalau saya sih sering hahaha. Maka dari itu saya sharing tips berikut.

Menggunakan Regular Expression

Pada tutorial kali ini, saya menggunakan RegExr(Regular Expression) pada bahasa pemrograman PHP. Regular Expression, regex, atau regexp sendiri adalah urutan karakter yang menentukan pola pencarian. Biasanya pola ini digunakan oleh algoritma pencarian string untuk operasi “find” atau “find and replace” pada string, atau untuk validasi input. Mungkin akan saya buat satu tulisan khusus untuk menjelaskan lebih dalam tentang RegExr ini.

Oke, yang pertama perlu kita pahami, url di YoutTube itu ada 2 macam standart link dan sort link

$normalLink = 'https://www.youtube.com/watch?v=4zdbonooImM';
$shortLink = 'https://youtu.be/4zdbonooImM';

Nah untuk mengubah kedua link tersebut menjadi embed link, kita sebenarnya hanya perlu mengambil youtubeIDnya yang mana youtubeID dari link di atas adalah “4zdbonooImM”. Lalu bagaimana kita mengambil youtubeID tersebut? Pertama kita buat dahulu fungsi PHP di bawah ini.

function getYoutubeEmbedLink($url)
{
    $shortUrlRegex = '/youtu.be\/([a-zA-Z0-9_]+)\??/i';
    $longUrlRegex = '/youtube.com\/((?:embed)|(?:watch))((?:\?v\=)|(?:\/))(\w+)/i';

    if (preg_match($longUrlRegex, $url, $matches)) {
        $youtube_id = $matches[count($matches) - 1];
    }

    if (preg_match($shortUrlRegex, $url, $matches)) {
        $youtube_id = $matches[count($matches) - 1];
    }
    return 'https://www.youtube.com/embed/' . $youtube_id ;
}

Setelah menambahkan fungsi di atas, kita bisa memanggilnya dengan cara seperti ini.

$output1 = getYoutubeEmbedUrl($normalLink);
$output2 = getYoutubeEmbedUrl($shortLink);
 
echo $output1;
echo "
";
echo $output2;

Taraaa, baik variable normalLink maupun shortLink akan menghasilkan output yang sama karena memang sebenernya itu adalah video yang sama. Mudah Bukan? 😀 Kira-kira kalau akan membahas trik-trik pemrograman lain, trik apa ya yang seru teman-teman? Bolih dong komen di bawah, siapa tau saya bisa bikin coretan lain tentang programming. Yang jelas jangan yang sulit-sulit ya, saya sendiri juga masih belajar hehehe.

Sumber

  • https://stackoverflow.com/questions/19050890/find-youtube-link-in-php-string-and-convert-it-into-embed-code
  • https://en.wikipedia.org/wiki/Regular_expression

Leave a Comment

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *