2017-06-09 4 views
-1

これは有効ですか?それは働いているから。オブジェクトをexit()パラメータとして

if(empty($query)) { 
    exit(View::forge('error', $data)); 
    //View::forge('error', $data) = object 
} 

PHPマニュアルexitによれば、パラメータとして「文字列」または「int」のみを受け入れる必要があります。

だから私が試した:

if(empty($query)) { 
    return View::forge('error', $data); //will not display 
} 

    return View::forge('default', $data); //displays 

をしかし、それはそれを無視し、デフォルトのテンプレートが表示されますので、私は出るとそれを組み合わせる試みたようだ:

if(empty($query)) { 
    return View::forge('error', $data); //will not display 
    exit; 
} 

return View::forge('default', $data); //displays 

しかし、それでも同じ結果、どのようなIそれがexit($ obj)がfuelphpで有効であることを知りたいですか?それは働いているようだから。

私がしたいことは、クエリが空の場合、デフォルトのテンプレートの代わりにエラーテンプレートを表示することです。何か助けていただければ幸いです!

答えて

0

オブジェクトのの結果がの場合、文字列または整数で、マニュアルに設定されている基準に適合します。 exit括弧内のものはすべてPHPの行として実行されます。以下の例を参照してください。

$a = 4; 
$b = 17; 
exit(print $a * $b); 

この意志出力

ので、あなたの質問に:

exit(View::forge('error', $data)); 

返された結果があればView::forgeは文字列またはその他の印刷可能な出力で、exitで設定された基準に適合し、それに応じて実行されます。

何であろうない作業非整数、文字列以外の結果などである。

$a[] = "trees"; 
$b[] = "cats"; 

exit(array_merge($a,$b)); 

が与える:

注意:配列行4

上の文字列変換に

この「変換」により、私はあなたがオブジェクトをthに渡すとe exit関数を使用している場合は、可能であれば__toString()クラスメソッドを使用しようとします(ただし、これはまだわかりません)。

+0

ご返信ありがとうございます!私はvar_dumpを試みました(View :: forge( 'error'、$ data));それは返されます - >オブジェクト(Fuel \ Core \ View)#23(){...などあなたはオブジェクトが文字列として処理されると言うことを意味する? exit()パラメータは有効ですか? 私はこのようにコーディングするのに問題はありませんか? –

1

FuelのViewクラスには、render()を呼び出してビューテンプレートをレンダリングする_toString()メソッドがあります。したがって、オブジェクトはそのように使用すると文字列を返します。

関連する問題