XiechenG adlı üyeden alıntı:
mesajı görüntüle
kb yide ordaki deger byte oldugu icin
1024 * kbDegeri
seklinde hesaplayabilirsiniz
16
●1.535

curl_setopt($ch, CURLOPT_RANGE, "0-7120");
<?php curl_setopt($ch, CURLOPT_RANGE, "0-1000"); ?>Sonraki 1000 byte için:
<?php curl_setopt($ch, CURLOPT_RANGE, "1001-2001"); ?>veya sondan 1000 byte almak için:
<?php curl_setopt($ch, CURLOPT_RANGE, "-1000"); ?>gibi. veya aralık olarak da yazılabilir:
<?php curl_setopt($ch, CURLOPT_RANGE, "0-1000, 1001-1500"); ?>şeklinde. Bu şekilde yapacaksan curl ile bağlanıp belirli bir aralığı alıp, sleep ile biraz bekleyip devam edebilirsin. Veya doomsday arkadaşımızın dediği gibi fread ile yapabilirsin, onun verdiği koda ekleme yaparsak, limit koyarak bu şekilde olabilir yanılmıyorsam:
<?php
$dosya = 'yazilacak_dosya';
$url = 'alinacak_dosya' ;
$limit = 10; //KB olarak Limit
$yaz = fopen($dosya,"w");
$fp = fopen($url,"rb");
while (!feof($fp)){
fwrite($yaz, fread($fp, round($limit*1024))); // limite göre çekiyoruz
sleep(1);//1 saniye bekliyoruz
}
fclose($fp);
fclose($yaz);
?>