매뉴얼의 ob_flush/flush에 대한 설명에는 둘 다 출력 버퍼를 새로 고치고 함께 사용해야 하므로 많은 사람들에게 혼동을 줄 수 있다고 되어 있습니다...
실제로 Operation 개체는 어떤 경우에는 플러시가 전혀 수행하지 않습니다.
ob_* 일련의 함수는 PHP 자체의 출력 버퍼를 작동합니다.
그래서 ob_flush는 버퍼를 새로 고칩니다. PHP 자체입니다.
엄밀히 말하면 플러시는 PHP가 Apache 모듈(핸들러 또는 필터)로 설치된 경우에만 실제 효과가 있습니다. 이는 WebServer의 버퍼를 새로 고칩니다(특히 Apache로 간주할 수 있음).
Apache 모듈의 sapi에서 플러시는 sapi_module의 플러시 멤버 함수 포인터를 호출하여 간접적으로 apache api를 호출합니다. ap_rflush는 apache의 출력 버퍼를 새로 고칩니다. 물론 매뉴얼에는 다른 모듈도 있다고 나와 있습니다. apache.이 작업의 결과가 변경될 수 있습니다.
mod_gzip과 같은 일부 Apache 모듈은 자체적으로 출력 캐싱을 수행할 수 있으며, 이로 인해 플러시() 함수에 의해 생성된 결과가 즉시 클라이언트 브라우저. 브라우저도 수신된 콘텐츠를 표시하기 전에 캐시합니다. 예를 들어, Netscape 브라우저는 개행 문자나 html 태그의 시작 부분을 받을 때까지 콘텐츠를 캐시하고 태그를 받을 때까지 전체 테이블을 표시하지 않습니다.
일부 버전의 Microsoft Internet Explorer는 256바이트를 수신한 후에만 페이지 표시를 시작하므로 이러한 브라우저가 페이지 콘텐츠를 표시할 수 있도록 하려면 일부 추가 공간을 전송해야 합니다. 따라서 두 가지를 사용하는 올바른 순서는 먼저 ob_flush를 사용하는 것입니다. 물론 다른 sapi에서는 플러시를 호출하지 않아도 괜찮습니다. 그러나 코드의 이식성을 보장하기 위해 사용하는 것이 좋습니다.
플러시 및 ob_flush를 사용할 때는 출력 버퍼가 플러시되는 것을 방지하는 몇 가지 특별한 고려 사항이 있습니다.
1. 플러시 및 ob_flush의 올바른 순서는 다음과 같습니다.
ob_flush();
flush();
운영 체제가 다음과 같습니다. 웹 서버는 Windows 시스템이므로 순서가 바뀌거나 ob_flush()를 사용하지 않아도 문제가 없습니다. 그러나 Linux 시스템에서는 출력 버퍼를 플러시할 수 없습니다.
2. ob_flush()를 사용하기 전에 이전 콘텐츠 크기가 4069자인지 확인하세요.
일부 웹 서버의 기본 출력 버퍼링은 4069자 이상입니다. 즉, 플러시가 효과적인지 확인하려면 서버가 출력 버퍼를 플러시하기 전에 출력 콘텐츠가 4069자에 도달해야 합니다. ob_flush() 함수 앞에 오는 것이 가장 좋습니다. 다음 명령문이 있습니다:
print str_repeat(" ", 4096);
output_buffering 값에 도달했는지 확인합니다.
<?php for ($i=1; $i<20; $i++) { echo "<font size='10' color='red'>".$i."</font>"; echo '<br>'; ob_flush(); flush(); sleep(1); } ob_end_flush(); ?>
PHP에서 ob_flush와 플러시의 차이점에 대한 더 많은 관련 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기
