- substr: documentation ( source)
- file_get_contents: documentation ( source)
- strpos: documentation ( source)
- parse_str: documentation ( source)
- urldecode: documentation ( source)
- explode: documentation ( source)
<?php
$debug = true;
$id = 'crl_Z6uwups';
$type = 'mp4';
$url = 'http://youtube.com/get_video_info?video_id=';
$key = 'url_encoded_fmt_stream_map';
$content = file_get_contents($url.$id);
parse_str($content, $result);
/*if($debug)
{
echo $url.$id.'<br/>';
echo $key.'<br/>';
echo $type.'<br/>';
echo '<pre>';
print_r($result);
echo '</pre>';
}
else
{
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="videofile.'.$type.'"');
}
*/
$type = 'type=video/'.$type;
$files = explode(',url=', $result[$key]);
$files[0] = substr($files[0], 4);
for($i=0; $i<count($files); $i++)
{
$file = urldecode($files[$i]);
$found = strpos($file, $type) > -1;
if ($found){
echo '<a href="'.$file.'">'.$file.'</a><br/><br/>';
}
}
?>