(PHP 4, PHP 5)
ob_start — 출력 버퍼링을 켭니다
bool ob_start ([ callable $output_callback = NULL [, int $chunk_size = 0 [, int $flags = PHP_OUTPUT_HANDLER_STDFLAGS ]]] )
출력 버퍼링을 켭니다. 출력 버퍼링을 활성화한 동안, (헤더를 제외한) 스크립트의 모든 출력을 내부 버퍼에 저장하고, 실제로 전송하지 않습니다.
이 내부 버퍼의 내용은 ob_get_contents()를 이용해서 문자열 변수로 복사할 수 있습니다. 내부 버퍼에 들어있는 내용을 출력하려면, ob_end_flush()를 사용하십시오. 또는, ob_end_clean()로 버퍼 내용을 출력하지 않고 지울 수 있습니다.
인수 ¶
output_callback
선택적인 output_callback 함수를 지정할 수 있습니다. 이 함수는 문자열을 인수로 받고, 문자열을 반환해야 합니다. 이 함수는 (ob_flush(), ob_clean() 등의 함수로) 출력 버퍼를 보내거나(전송) 비울 때, 또는 요청 마지막에 출력 버퍼를 브라우저로 보낼 때 호출됩니다. output_callback을 호출 할 때 출력 버퍼의 내용을 인수로 보내고, 브라우저로 전송할 새 출력 버퍼를 결과로 반환하여 작동합니다. output_callback이 호출할 수 있는 함수가 아니라면, 이 함수는 FALSE를 반환합니다. 다음이 콜백 형태입니다:
bool handler ( string $buffer [, int $phase ] )
buffer
출력 버퍼의 내용.
phase
PHP_OUTPUT_HANDLER_* 상수의 비트 마스크.
output_callback이 FALSE를 반환하면, 원 입력이 브라우저로 전송됩니다.
output_callback 인수는 NULL 값을 넘겨서 지나갈 수 있습니다.
ob_end_clean(), ob_end_flush(), ob_clean(), ob_flush(), ob_start()는 콜백 함수에서 호출할 수 없습니다. 이 함수들을 콜백 함수에서 호출하면, 그 동작은 정의되어 있지 않습니다. 버퍼 내용을 지우고 싶으면, 콜백 함수에서 ""(빈 문자열)을 반환하면 됩니다. 또한, 출력 버퍼링 함수를 사용하는 print_r($expression, true), highlight_file($filename, true) 등의 함수도 콜백 함수에서 호출할 수 없습니다.
위 예제는 php.net에서 가져온것이고 거기에 제 설명을 간미한것입니다.
<?php
function callback($buffer)
{
// 모든 apples를 oranges로 치환합니다.
return (str_replace("apples", "oranges", $buffer));
}
ob_start("callback");
?>
<html>
<body>
<p>It's like comparing apples to oranges.</p>
</body>
</html>
<?php
ob_end_flush();
?>
output :
<html>
<body>
<p>It's like comparing oranges to oranges.</p>
</body>
</html>
callback함수 없이 실행 할경우
<?php
ob_start();
?>
<html>
<body>
<p>It's like comparing apples to oranges.</p>
</body>
</html>
<?php
$print = ob_get_contents();
ob_end_clean();
echo $print;
?>
output :
<html>
<body>
<p>It's like comparing apples to oranges.</p>
</body>
</html>
게시판 목록
팁게시판
질문은 상단의 QA에서 해주시기 바랍니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 5627 |
멋진남자임
|
10년 전 | 1452 | |
| 5626 | 10년 전 | 3865 | ||
| 5625 |
멋진남자임
|
10년 전 | 1521 | |
| 5624 | 10년 전 | 2091 | ||
| 5623 | 10년 전 | 1554 | ||
| 5622 |
네이비칼라
|
10년 전 | 1607 | |
| 5621 |
멋진남자임
|
10년 전 | 1401 | |
| 5620 |
잘살아보자
|
11년 전 | 1090 | |
| 5619 | 11년 전 | 3406 | ||
| 5618 |
이웃집초보
|
11년 전 | 1273 | |
| 5617 |
|
11년 전 | 4617 | |
| 5616 |
멋진남자임
|
11년 전 | 1096 | |
| 5615 |
멋진남자임
|
11년 전 | 1364 | |
| 5614 | 11년 전 | 4484 | ||
| 5613 |
파랑새1597
|
11년 전 | 2599 | |
| 5612 | 11년 전 | 1997 | ||
| 5611 |
잘살아보자
|
11년 전 | 5240 | |
| 5610 |
잘살아보자
|
11년 전 | 2138 | |
| 5609 |
잘살아보자
|
11년 전 | 3208 | |
| 5608 |
잘살아보자
|
11년 전 | 4126 | |
| 5607 |
잘살아보자
|
11년 전 | 1940 | |
| 5606 |
잘살아보자
|
11년 전 | 1902 | |
| 5605 |
잘살아보자
|
11년 전 | 5719 | |
| 5604 |
잘살아보자
|
11년 전 | 2679 | |
| 5603 |
잘살아보자
|
11년 전 | 1001 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기