- var_dump: documentation ( source)
- preg_replace: documentation ( source)
<?php
$pattern = '~(?:http|https|)(?::\/\/|)(?:www.|)(?:youtu\.be\/|youtube\.com(?:\/embed\/|\/v\/|\/watch\?v=|\/ytscreeningroom\?v=|\/feeds\/api\/videos\/|\/user\S*[^\w\-\s]|\S*[^\w\-\s]))([\w\-]{11})[a-z0-9;:@?&%=+\/\$_.-]*~i';
$youtube_url = "http://www.youtube.com/watch?v=ty9QSiVC2g0";
$youtube_id = (preg_replace($pattern, '$1', $youtube_url));
var_dump ($youtube_id);