잔글
Utolee90님이 PHP flush 문서를 넘겨주기를 만들지 않고 작은숲:위키노트/PHP flush 문서로 이동했습니다: 위키노트 문서 작은숲으로 이동
잔글 (문자열 찾아 바꾸기 - "<source" 문자열을 "<syntaxhighlight" 문자열로) |
잔글 (Utolee90님이 PHP flush 문서를 넘겨주기를 만들지 않고 작은숲:위키노트/PHP flush 문서로 이동했습니다: 위키노트 문서 작은숲으로 이동) |
||
| (같은 사용자의 중간 판 2개는 보이지 않습니다) | |||
| 1번째 줄: | 1번째 줄: | ||
{{DISPLAYTITLE:PHP flush() 함수}} | {{DISPLAYTITLE:PHP flush() 함수}} | ||
[[위키노트 | [[작은숲:위키노트/PHP|PHP]] <tt>[[작은숲:위키노트/PHP:flush|flush()]]</tt> 함수는 출력 버퍼에 쌓여있는 내용을 곧바로 전송하는 역할을 한다. [[작은숲:위키노트/아파치|아파치]]에서 PHP를 동적 모듈(DSO, 동적 공유 객체)로 올려 사용할 때는 아래와 같이 하면 스크립트가 종료하기 전이라도 보내고자 하는 출력값을 보낼 수 있다. | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
@apache_setenv('no-gzip', 1); | @apache_setenv('no-gzip', 1); | ||
| 15번째 줄: | 15번째 줄: | ||
flush(); | flush(); | ||
sleep(1); | sleep(1); | ||
}</ | }</syntaxhighlight> | ||
위에 두 줄은 gzip 압축 전송하는 것을 막는 것이다. 압축 전송하면 모든 출력값을 모아서 gzip 압축한 후에 보내기 때문에 출력값을 필요할 때마다 보내려면 gzip 압축을 포기해야 한다. 그런 후 브라우저에 따라 일정 크기 이상이 되지 않으면 처리하지 않는 문제를 피하기 위해 사전에 빈 문자열을 4,000 바이트 이상 보내준다. 그런 후 필요한 출력을 하고 <tt>flush()</tt> 함수를 써서 출력한 값을 곧바로 전송한다. | 위에 두 줄은 gzip 압축 전송하는 것을 막는 것이다. 압축 전송하면 모든 출력값을 모아서 gzip 압축한 후에 보내기 때문에 출력값을 필요할 때마다 보내려면 gzip 압축을 포기해야 한다. 그런 후 브라우저에 따라 일정 크기 이상이 되지 않으면 처리하지 않는 문제를 피하기 위해 사전에 빈 문자열을 4,000 바이트 이상 보내준다. 그런 후 필요한 출력을 하고 <tt>flush()</tt> 함수를 써서 출력한 값을 곧바로 전송한다. | ||
== 참고 == | == 참고 == | ||