2014-09-08 4 views
0

변수를 파일의 내용으로 설정 한 다음 해당 변수를 템플릿 파일에서 사용하는 다음 코드를 사용합니다.PHP가 file_get_contents 내에서 작동하지 않습니다.

$content = file_get_contents('./section_body.php'); 

include $_SERVER['DOCUMENT_ROOT'] . '/includes/template.php'; 

section_body.php에 포함을 추가하기 전까지는 문제가 없었습니다. 이 include의 내용은 페이지에 렌더링되지 않습니다.

내가 잘못 가고있는 아이디어가 있습니까? 도움이된다면

여기 section_body.php의 코드 : 당신은 당신이 처리 시간을 단축 할 수 있도록) (file_get_contents없이 다음과 같은 내용을 렌더링 얻을 수있는

<?php 

include $_SERVER['DOCUMENT_ROOT'] . '/controllers/category_list.php'; 

?> 

<div> 
    <h1>Title</h1> 
    <p>dfg kjdfsghsd fkjghdjksfg jdhksfg kjsdfg hjskdf ghjsdfg kdhjsfg </p> 
</div> 
+4

file_get_contents는 그냥 텍스트로 파일을 읽거나 진 말, PHP 코드를 실행하지 않습니다. – anwerj

+1

그건 의미가 있습니다! 문제 해결을위한 올바른 방법을 가르쳐 주시겠습니까? 출력 버퍼링이 가장 좋은 방법이라고 생각할 수 있습니까? – Tom

+0

이 답변은 당신을위한 것이라고 생각합니다. [link] (http://stackoverflow.com/questions/1272228/how-do-i-load-a-php-file-into-a-variable) – anwerj

답변

0

귀하의 웹 사이트 템플릿 구조를 구축하려는 것 같습니다. 이미 존재하는 것이 많으며 선택 사항이기도합니다.

당신은 PHP output control functions와 함께 일할 수있는, [ob_start()]로 시작합니다. (http://php.net/manual/en/function.ob-start.php)

<?php 
    ob_start(); 
    include $_SERVER['DOCUMENT_ROOT'] . "section_body.php"; 
    $content = ob_get_contents(); 
    ob_end_clean(); 
    include $_SERVER['DOCUMENT_ROOT'] . '/includes/template.php'; 
?> 
0

.

ob_start(); 
include('./section_body.php'); 
$content=ob_get_clean();