Zend Framework 1.Xでは、次のアプローチのどれが優れているのか、そしてその理由は何ですか?
アプローチ-1:
Zend_Aclを拡張する(サブ)クラスを作成し、すべてのAclを管理するために使用します。これにより、$thisオブジェクトを使用してすべてのZend_Acl機能/関数を使用できるようになります。
アプローチ2:
Zend_Aclオブジェクトを保持するカスタムクラスを作成し、オブジェクトに対してアクションを実行します。ここでは、ラッパー関数を作成し、Zend_Aclの基本関数へのアクセスを制御して、ほんの一握りの機能のみを使用できます。
シングルトンパターンを両方のアプローチに使用して、サイト全体で同じZend_Aclが使用されるようにすることもできます。
後でZF-2.0に簡単に移植できるアプローチを探しています。他にアプローチがある場合は、それについて言及してください。それに応じて投稿を更新します。
更新:サイト全体で単一のZend_Aclオブジェクトを維持するために、シングルトン以外のアプローチはありますか?また、approach-1でシングルトンを使用し、カスタムメソッドも使用することについてどう思いますか。これにより、Zend_Aclのすべての定義済みメソッドとカスタムラッパーが提供されます。