1

PHP로 템플릿 작업을하고 있습니다. 밖에 템플릿 엔진이 있다는 것을 알고 있지만 작은 프로젝트를 위해 간단한 것을 원합니다. 여기 내 문제 :모델 계층에서 템플릿 페이지로 메시지 또는 출력을 통합하는 방법

에서는 출력의 대부분이 내 페이지의 콘텐츠 섹션에 표시 할 템플릿에 변수 $의 내용에 저장 할당

하지만 가끔은 내가이 에코 ("어쩌구 저쩌구") 내 모델 [예외의 경우처럼, 쿼리 실패] 및 내 페이지로 전달하고 싶습니다.

문제는이 출력이 페이지 앞에 표시됩니다.

$contents = "I want to show this"; 

$news = $news->getNews(); 

//concatenate 
$contents = $contents.''.[resultsfromnews] 

$template = new Template(); 
$template->content = $contents; //and so on 
$template->display(); 

$news->getNews() 메서드 또는 호출하는 메서드는 무엇인가를 에코합니다. ('데이터베이스 특정 오류, 예외), 그들은 $template->display()

일반 페이지 내용을 페이지의 콘텐츠하기 전에 여기

LOREM을 보여주는 getNews()에서

사용자 정의 오류 정보/알림 호출되기 전에 보여 딤섬은 앉아 있고, 아편 양자리가 있고, 아드님이 있고, 멍청한 녀석은 흉측 한 털이 많다. volutpat. 그런 다음, 최소한의 힘을 사용하여 운동을 시작하십시오. 다음과 같은 결과가 나올 수 있습니다. 음주 운전 autem VEL EUM iriure 슬픔 에서 vulputate의 velit ESSE molestie의 consequat, VEL ILLUM dolore EU feugiat의 nulla의 facilisis에 hendrerit에서 베로 에로스 등 accumsan 등 iusto ODIO dignissim 간략히 blandit 저희에게 연락 luptatum zzril delenit augue 음주 운전 dolore TE feugait nulla facilisi. 남 리베르 tempor 정액 soluta NOBIS eleifend 옵션 congue의 nihil imperdiet의 반구형 ID는

그 출력을 표시하는 내 콘텐츠의 일부가 될 수있는 방법을 해결 ... 저를 도와주세요.

나는이 문제가 저기에있는 모든 인기있는 템플릿 엔진 (Smarty, Twig, phpsavant 등)에서 발생할 수 있다고 생각합니다. 어떻게 처리 되었습니까?

*

는 나는 다른 템플릿 엔진에서 작동하는 방법을 알고 잠시 검색 한 - 귀하의 질문에 대답하기 위해 가까운 *

감사

+0

프로젝트에 단순하고 작은 것을 원하면 [콧수염] (http://mustache.github.com/)을 제안 해주십시오. – hakre

+0

나는 전에 그것을 보았지만 갈 시간이 없었습니다. 그것은 다른 곳에서 작성된 맞춤 메시지를 처리 ​​할 것인가? 질문에 언급 된 바와 같이 – codingbiz

+0

예, 변수를 할당 할 수 있습니다. 출력 버퍼링을 사용할 수도 있습니다. 아마 당신이 찾고있는 것입니까? http : // php.net/manual/ko/book.outcontrol.php – hakre

답변

1

없어요 그러나

$contents = "I want to show this";  

ob_start(); 
$news = $news->getNews(); 
$buffer = ob_get_contents(); 
ob_end_clean(); 

//concatenate 
$contents = $contents.$buffer.''.[resultsfromnews] 

$template = new Template(); 
$template->content = $contents; //and so on 
$template->display(); 

을 , 하나는 모델 내에서 울려서는 안됩니다. 출력을 설정하기 전에 예외를 throw하고 catch하는 것이 좋습니다.