YesYo.com MintState Forums
뒤로    YesYo.com MintState BBS > Tech > PHP
검색
멤버이름    오토
비밀번호 
 

파일 다운로드 속도 제한

페이지 정보

작성자 MintState 댓글 0건 조회 15,112회 작성일 08-11-03 10:30

본문

파일 다운로드 속도 제한

자원을 골고루 나눠 줄수 있는 방법인것 같습니다.

fread ( int fp, int length)
버      전: PHP 3, PHP 4
기      능:  Binary-safe 파일 읽기
설      명:  fread()는 fp에 의해 참조가 되는 파일 포인터로부터 length를 바이트로 증가시키며 읽습니다. length바이트가 읽혔거나 파일의 끝에 도달되거나 둘중에 먼저 끝나는 것이 있으면 읽기가 종료됩니다.

// 파일의 내용을 문자열로 가져오기
$filename = "/usr/local/something.txt";
$fd = fopen ($filename, "r");
$contents = fread ($fd, 파일의크기 ($filename));
fclose ($fd);


float round ( float val [, int precision])
버      전: PHP 3, PHP 4
기      능: 실수를 반올림합니다.
설      명: 주어진 val값의 반올림한 값을 주어진 돌려준다.
precision이 있을 경우 소수점 다음 precision 자리수 까지 돌려준다.

참고: precision 는 PHP 4 에서만 유용하다.

$foo = round(3.4);  // $foo == 3.0
$foo = round(3.5);  // $foo == 4.0
$foo = round(3.6);  // $foo == 4.0
$foo = round(3.6, 0);  // $foo == 4

$foo = round(1.95583, 2);  // $foo == 1.96

$foo = round(1241757, -3);  // $foo == 1242000



브라우즈에서 실시간으로 음악을 다운로드 받는 간단한 예제
출처: http://phpschool.com/bbs2/inc_view.html?id=9957&code=tnt2

<?php 

$file = "test.mp3"; // 파일을 클라이언트가 받는다. 
$speed = 8.5; // 8,5 kb/s 비율로 다운로드를 받는다. 

if(file_exists($file) && is_file($file)) { 
   header("Cache-control: private"); 
   header("Content-Type: audio/mp3"); 
   header("Content-Length: ".filesize($file)); 
   header("Content-Disposition: filename={$file}"); 
   flush(); 

   $fp = fopen($file, "r"); 
   while(!feof($fp)) { 
         echo fread($fp, round($speed*1024)); 
       flush(); 
       sleep(1); 
   } 
   fclose ($fp); 
} 
?>

댓글목록

등록된 댓글이 없습니다.

Total 165건 5 페이지
PHP 목록
번호 제목 글쓴이 조회 날짜
65 MintState 14822 11-03
64 MintState 14849 10-29
63 MintState 14851 11-03
62 MintState 14912 10-29
61 MintState 14958 10-29
60 MintState 14962 04-17
열람중 MintState 15113 11-03
58 MintState 15121 10-31
57 MintState 15232 11-03
56 MintState 15293 11-03
55 MintState 15392 04-17
54 MintState 15398 07-28
53 MintState 15450 02-17
52 MintState 15581 11-03
51 MintState 15790 11-03
50 MintState 15890 11-10
49 MintState 15962 10-28
48 MintState 16073 02-12
47 MintState 16143 02-23
46 MintState 16203 04-06
45 MintState 16210 11-03
44 MintState 16228 11-10
43 MintState 16254 11-10
42 MintState 16301 03-04
41 MintState 16468 10-29
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2024, YesYo.com MintState. ™