問題がある場合は PHP を使用しており、Product というクラスで製品を追跡しています。コンストラクターは、製品の ID である 1 つのパラメーターを受け入れます。次に、コンストラクターはデータベースにアクセスし、製品に関するすべての情報を取得して、そのインスタンスのすべてのプロパティを設定します。すべての操作が完了したら、ユーザーは save() 関数を呼び出すことができ、新しい情報によってデータベース内の製品が更新されます
コンストラクターで製品の id がゼロに設定されている場合、製品クラスはこれが新しい製品であることを認識し、変数を取得しません。すべての変数を設定して検証することができます。次に、save() 関数を呼び出すと、製品が作成され、製品の ID がデータベースの行に指定された新しい ID に設定されます。
私が直面している問題は、製品が作成されていて、ID がないためにまだ保存されていない場合、特定の関数を呼び出せないことです。そのため、現時点では、いくつかの関数が呼び出されるたびに、ID > 0 を確認する必要があります。
クラスを作成専用のクラスと既存の製品 (Product や CreateProduct など) を使用するためのクラスに分割するのは良い考えではないかと考えていました。これの利点は、Product クラスが常に製品が既に作成されていると想定できるため、それを確認する必要がなく、すべての検証メソッドを別のクラスに移動して、より適切に管理できることです。
いくつかの意見や推奨事項を聞きたかっただけです。ありがとう、アレックス