saol ascer ne alemdesin ya sende yaz 2 bişiler

hazır girmişken bişi daha yazam
youtube indirici getten gelen youtube video id sini indirir.
<?php //php yi başlattık
if(empty($_GET[id])) die("Id yi boş gönderemezsiniz");//id boş ise ekrana hata verdirdik ve scriptin alt kısmının çalışmasını engelledik die() fonk ile
function dosya_al($url) {//dosya al fonksiyonunu tanımlıyoruz $url deişkenini alarak
if(function_exists('curl_init')) {//curl fonksiyonu sunucuda mevcut kurulu ise curl ile alıyor yoksa file_get_contents ile alıyor
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt ($ch, CURLOPT_REFERER, $url);
$veri = curl_exec($ch);
curl_close($ch);
} else {
$veri = file_get_contents($url);
}
return $veri;//veri değişkeni fonksiyondan çıktı olarak veriliyor
}
function indir($id) { //youtube indir fonk. tanımlanyor
$url="http://www.youtube.com/watch?v=".$id;//sayfa atanıyor
$gelen=dosya_al($url);//dosya al fonksiyonuna gidip sayfa çekiliyor
$bic=explode('SWFObject("/player2.swf?hl=en&',$gelen); $bic=explode('"',$bic[1]);
$title=explode('<title>',$gelen); $title=explode('</title>',$title[1]);//preg_match ile yapabilirdik ama ne biliyim zamanında explode ile yapmış koymuşum o yüzden değişmeye gerek duymadım bu explode satırlarınıda
//SWFObject("/player2.swf?hl=en& buradan başla" a kadar olan kısmı al dedik
//ikinci explode ise sayfanın titlesini yani videonun adını aldık
$veri[baslik]=$title[0];//explode nin [0] . çıktısı video adı
$veri[link]=$bic[0]; // video deep adresi &t= olan kısmı mühimdi
return $veri;// veri arrayına dönüş yaptırdık
}
$gidiyok=indir($_GET[id]);//indir fonksiyonuna id yi gönderdik ve videp deep link ile video adını aldık
ob_start();//header lerle işlem yapacağımız için ekşin yaptık burayıda
ini_set('zlib.output_compression', 'Off');//zlip çıktı sıkıştırmasını kapadık
header('Content-Description: File Transfer');//sayfa açıklaması nı atadık
header("Pragma: public");// cache cont dikkat ederseniz youtubeden videoyu izlediyseniz ve bu indiriciye sonra tıklarsanız mesala user videoyu izledi bğeendi indirmek istedi haşırt diye cacheden 1-2 sn de video iner
header("Expires: 0");// geçerlilik
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false);
header("Content-Type: application/force-download");// bir tip php nin content typleri mesala resim basacaksanız image/jpeg , png gif gibi video ise karakter düzenlemesi yapacaksanız
// header("Content-Type: text/html; charset=utf-8"); gibi text/xml vs. gibi atamalar yapılabilir biz burada dosya indirtmek için download yaptık içerik tipini
header("Content-Disposition: attachment; filename=\"www.biseyret.com-".$gidiyok[baslik].".flv\";");// içeriğe aldığımız dosya adını ve başınada site adımızı ekledik inecek dosyayı sayfaya atadık
header("Content-Transfer-Encoding: binary");// transfer tipini atadık
header("Content-Length: ".@filesize($dadi));//indirme sayfasında çıkacak dosya boyutu şukadardır bilgisinede verdik
readfile("http://youtube.com/get_video?$gidiyok[link]") or die("Dosya Bulunamadı");// indirme olayıda burada tamama erdi
?>iyi oldu galiba

bu dosyayı indir.php diye kayıt edin
indir.php?id=youtube_video_id
gibi videoyu indir diye link verebilirsiniz şayet şöyle bişi varsa hostunuzda youtube video id sini
http://www.youtube.com/v/NCO6y2ML7kw
bu şekilde saklıyorsanız
video id sine nasıl erişecem diyorsanız hemen
split-explode 2 side olur split i anlatalım bunları
daha önce
https://www.r10.net/php/73461-php-de-...ibi-okuma.html
burada vermiştim bakabilirsiniz
http://www.youtube.com/v/NCO6y2ML7kw
bu dosya url si
$link değişkeninde diye düşünelim
son video id sini almak için
$idx=split('/',$link);
$video_id=$idx[4];4. slashes(/) ten sonrası nı video_id değişkenine atamasını
söyledik
link verirkende
<a href='indir.php?id=<?=$video_id;?>' title='$title videosunu indir'>
$title İndir</a>
gibi linklendirebilirsiniz araya img falan koyup ona link verirseniz
vs.vs. herşey mümkün