웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
사용자에게 파일 내용을 뿌릴땐 fpassthru를 쓰자
2014.03.23 15:54
fread말고 fpassthru를 써야되는 이유를 두가지 이유만 적겠습니다.
1. 사용자의 응답속도를 줄일 수 있습니다.
fpassthru는 파일을 열은 포인터를 이용하여 컨텐츠를 사용자에게 실시간으로 뿌려줍니다.
그렇기때문에 사용자가 0.1초라도 더 컨텐츠를 빠르게 볼 수 있습니다.
fread를 사용할경우
fopen(파일 포인터 열음) -> fread(파일 컨텐츠를 불러옴) -> fclose(파일 포인터 종료) -> echo(파일 내용을 전송) -> 종료
fpassthru를 사용할경우
fopen(파일 포인터 열음) -> fpassthru(파일 컨텐츠를 불러오면 바로 출력하여 전송) -> fclose(파일 포인터 종료) -> 종료
의 과정을 거칩니다. 과정이 한개 더 줄어들며 PHP에서 불러온만큼 바로바로 한번에 전송해주니 사용자들의 체감속도가 늘어납니다.
2. 코드가 줄어듭니다.
$fp = fopen('./textfile.txt', 'r'); $content = fread($fp, filesize('./textfile.txt')); echo $content; fclose($fp);
참 번거롭죠.
fpassthru를 쓰면 단 3줄이면 끝납니다.
$fp = fopen('./textfile.txt', 'r'); fpassthru($fp); fclose($fp);
이정도만 해도 충분히 써야될 이유를 적었다고 생각합니다.