PHP 밖에서 출력한 HTML을 변수에 저장하기

HTML을 변수에 저장해야 할 때 따옴표로 감싸면 거부감이 든다.

$html = '<textarea id="bbp_{$context}_content" 
	class="{$editor_class}" name="bbp_{$context}_content" 
	cols="60" rows="{$textarea_rows}" 
	tabindex="{$tabindex}">{$post_content}</textarea>';

이딴 식이 돼 버리니 말이다. HTML 코드 어시스트 기능도 활용할 수 없는 경우가 많아 답답하다.

이럴 때는 ob_get_contents를 사용한다. 그러면 출력하는 내용을 그대로 받아서 변수에 저장할 수 있다.

<?php
// Start an output buffor
ob_start();
?>
출력되는 이 부분이 아래 $output에 저장된다.
<?php
// Put the output into a usable variable
$output = ob_get_contents();

// Flush the output buffer
ob_end_clean();

echo var_dump($output);
// result : string '출력되는 이 부분이 아래 $output에 저장된다.' (length=...)

핵심은 ob_start()$output = ob_get_contents(), 그리고 ob_end_clean()이다.

카테고리

17년차 풀스택 웹 개발자 Mytory입니다

웹 개발에서도 중요한 것은 개념입니다.
이 블로그에는 제가 개발하며 익힌 개념들을 정리합니다.

워드프레스를 오래 다뤄 왔고 강의도 두 편 찍었습니다.
– 인프런 “워드프레스 제대로 개발하기 어드민 편, 클라이언트 편
– 클래스101 “누구나 할 수 있는 워드프레스 홈페이지 만들기 – 기획부터 출시까지 한 방에 OK

유튜브 채널에 워드프레스 관련 팁들을 올리고 있습니다.

👉 소개 더 보기

대표글

댓글 남기기