2012-03-09 10 views
-2

モデルから配列形式でデータを取得していますが、その直後にexit()関数を使用しないとprint_rを使用できない理由を知りたいのですが?print_rは時々動作しますか?

これは動作します:

function someview() 
{ 
    $result=$this->User->getdatafrommodel(); 
      print_r($result); 
      exit(); 
    if(!empty($result)) 
    { 
     //do something 
    } 
    else 
    { 
     $this->redirect(array('action'=>'usernotexist')); 
    } 
} 

function usernotexist() 
{ 
    $this->loadSkin(); 
} 

これは空の配列を出力します。

function someview() 
{ 
    $result=$this->User->getdatafrommodel(); 
      print_r($result); 
    if(!empty($result)) 
    { 
     //do something 
    } 
    else 
    { 
     $this->redirect(array('action'=>'usernotexist')); 
    } 
} 

function usernotexist() 
{ 
    $this->loadSkin(); 
} 

誰かが私になぜそうだと教えてもらえますか?結果が空であるように、コードの第二のブロックで

+0

もしあれば、どんなエラーがありますか? – tekknolagi

+0

どのような種類の出力バッファリングを使用していますか? –

+0

'if(!empty($ result))'の内部でリダイレクトされますか? –

答えて

1

は、このラインは、他のブロックに呼び出されます。

$this->redirect(array('action'=>'usernotexist')); 

だからあなたの出力が終了()文でなく、異なるページであるように思われます。

関連する問題