私はコントローラーを薄く、完全に1つのサービスコールにしようとしています。だから私は私の行動を書く:
public function actionDoSomething($request, $arg1, $arg2)
{
$result = $someService->doSomething($arg1, $arg2);
if ($result === true)
return 'Done';
return 'Failed, but cannot say why';
}
今、私は疑問を持っています:
サニタイズ/フィルタリング/検証なしで、ユーザー入力がサービスに直接渡されても問題ありませんか? 必ずしもそれを呼び出す必要があるとは限りません (たとえば
$arg1
、整数であると予想されますが、ユーザーは 1.25 を入力しました)。サービスは、コントローラーが知らない多くの作業を行う場合があります。サービスから返される型は何ですか? ブール値、整数、SomeResult クラス、配列、混合? 失敗した場合、どのデータを返す必要がありますか? const 値、メッセージの配列? 返信に必要です。採用できる標準またはベストプラクティスはありますか?