2014-04-19 3 views
1

PhalconPHP devtools를 사용하여 프로젝트 뼈대를 만들고 indexController에서 indexAction(){}의 일부 테스트를 수행했습니다. 내가 두 번 컨텐츠를 얻고이 방법을 알고에코 출력을 변경할 수 없습니다.

<!DOCTYPE html> 

<html> 

    <head> 

     <title>Phalcon PHP Framework</title> 

    </head> 

    <body> 

    <?php echo $this->view->getContent(); ?> 

     {{ content() }} 

    </body> 

</html> 

:

내 인덱스 컨트롤러 : 같은

class IndexController extends ControllerBase 

{ 

    public function indexAction() 

    { 

     echo "OUUUUUTPUUUUUUUUUUUUUUUT"; 

    } 

} 

및 index.volt 보인다. 하지만 이것은 디버깅을위한 것입니다. 내가 할 출력은 : 나는 PhalconPHP 1.3.0 우분투 서버 12.04 테스트를위한 크롬 브라우저를 사용하고 있어요

<h1>Congratulations!</h1> 
 

 
<p>You are now flying with Phalcon. Great things are about to happen!</p> 
 

 
<h1>Congratulations!</h1> 
 

 
<p>You are now flying with Phalcon. Great things are about to happen!</p>

.

+0

당신은 스크린 샷을 재 게시 또는 여기에 출력을 붙여 복사 단지 수 있을까요? –

+0

이미지 URL을 복사하여 다른 탭에 붙여 넣을 수 있습니다. 이미지 크기가 조정되었습니다 – Ismail

답변

2

팔콘보기에서 output buffering을 사용합니다.보기가 제어 할 수 있으므로 echo 출력이 표시되지 않는 이유는 확실합니다. 당신은 컨트롤러에서 직접 물건을 인쇄 할보기를 비활성화 할 수 있습니다

public function indexAction() 
{ 
    $this->view->disable(); 
    echo "HELLO"; 
} 

실제 디버깅 문제를 해결하기 위해, 나는 Xdebug을 고수하는 것이 좋습니다 - 그것은 PhpStorm 또는 NetBeans처럼, 대부분의 IDE에 의해 완벽하게 Phalcon 괜찮 및 지원 작동 , 브라우저 확장 (Chrome, Safari 등)이 있습니다. 처음에는 머리를 쓰는 데 시간이 오래 걸리지 만, 투자 된 시간은 그만한 가치가 있습니다. 강력 추천.

public function testAction(){ 
    echo 'Hello world'; 
    $this->view->setRenderLevel(View::LEVEL_NO_RENDER); //will stop render view 
} 

내가 컨트롤러에서 직접 출력 JSON에 사용 같아요

+0

고마워요! 내가 해결 한 추가 정보 : viewsdir/index/index.volt에 {{content()}} 추가하기 – Ismail

0

이 필요 것입니다. :)

-1
$this->view->setContent('OUUUUUTPUUUUUUUUUUUUUUUT'); 

또는

echo 'OUUUUUTPUUUUUUUUUUUUUUUT';die(); 
관련 문제