ドメイン レイヤーとマッパー レイヤーを使用して PHP アプリケーションを構築しており、ユーザー入力を検証する場所を決定する必要があります。ほとんどの検証は Zend_Form インスタンスに対して行われます。(Matthew Wierer O'Phinney のチュートリアルによると、モデルに属するものとして Zend_Form の検証の側面を見ています)。
2つのオプションは次のとおりです。
- ユーザー入力時のドメイン層。たとえば
new user($_POST)
、 __construct() メソッドは、入力フォームに対して $_POST を検証します。 - データを永続化する際のマッパーレイヤー。たとえば、
$userMapper->insert($user)
メソッドは入力フォームに対して $user を検証します
私の感覚では、検証ルールはビジネス ルールによって駆動されることが多いため、検証はドメイン レイヤーで処理する必要があります。そうは言っても、何かが欠けている可能性があります。これは大きな設計上の決定であるため、皆様のご意見をお待ちしております。
モデルの検証に加えて、バックエンドにデータベースの制約があり、ユーザー エクスペリエンスを向上させるために JS の検証を計画しています!
ご意見ありがとうございます!!!