問題タブ [zend-config]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - ZF2:モジュールのグループ
私はZF2を学び、アプリケーションを計画しているところです。
モジュールのいくつかのグループを持つ1つのアプリケーションが欲しいです。モジュールの各グループには、最大20以上のモジュールを含めることができます。
アプリ全体のモジュールの一意の名前を保証することはできませんが、モジュールグループ内での一意性を保証することはできます。
理想的には、ホスティングルーターを使用してモジュールグループにリクエストをルーティングします。
例: http: //admin.mysite.com/foo/ =>'Admin / Foo / Index / Index'、
http://special.mysite.com/foo/ =>'Special / Foo / Index / Index'
アイデア#1
モジュールグループごとに異なるmodule_pathを使用し、モジュールグループの周りのモジュールパスに名前空間を付けて、モジュールのクラスの一意性を判断したいと考えていました。ただし、module_autoloaderに送信されるモジュールは、渡される文字列の最初の部分にのみ注意を払うようです。
例えば
これは私が理解していない奇妙な振る舞いになります:
- 3つすべてが正しいモジュールコントローラーを指しますが、独自のビューではなく、Admin \ Admin(モジュールリストの最初にある)のビューをロードします。
- IE / users、Admin \ Users \ IndexControllerをロードしますが、ビュースクリプトAdmin \ Admin \ view \ admin \ Index \ index.phtml
templateInjecterにいくつかの小さな変更を加えることでこれを修正できましたが、面倒なようです。
アイデア#2
モジュール名をサブディレクトリの前に付けるだけです。
考え
- 名前空間はクラスプレフィックスよりも優先されます
- モジュールごとにハードコードされたルートを使用する代わりに、これを可能な限り自動化しようとしています
- 共通のCookiehost/memcacheやdbなどを介して認証用のモジュールを共有する複数のアプリケーションを使用することは理にかなっています...
- モジュールコントローラーなどのtreeRouteStack内のホスティングタイプルートを使用して、各モジュールを特定のサブドメインにルーティングします。
質問:
- この状況または同様の状況に対する彼らのベストプラクティスはありますか、またその理由は何ですか?
zend-framework - セッション中にZend application.iniファイルからパラメータを取得する方法は?
application.ini
ZF の構成ファイルです。ZF のマニュアルに書かれているデフォルト以外にも、いくつかの設定があります。しかし、たとえばアクション コントローラからこれらのパラメータを取得するにはどうすればよいでしょうか? セッション中にこの構成をどこに保存するのが良いですか?
このBootstrap_Abstract
クラスには、読み取りファイルgetOptions()
の単純な php 配列を返すメソッドがあります。application.ini
そして、要素をおっとスタイルで取得したいと思います:
ZF にはZend_Config_Ini
、 を読み取り.ini
、正確に ArrayObject を返すクラスがあります。しかし、とにかく読んだ後にapplication.ini
もう一度Zend_Config_Ini
読むことは避けたいと思います。Zend_Application
しかし、Bootstrap
またはZend_Application
クラスは、からの ArrayObject の自動作成を提供しませんapplication.ini
。
次に、この $config をどこに保存すればよいでしょうか? でZend_Registry
?
そして、いくつかのアクションコントローラーでそれを取得します:
しかし、それは少し効率が悪いようです:通常の php 配列の形式で のコピーを 1 つと、同じものapplication.ini
のArrayObject の形式でも 1 つのコピーを持っています。私の設定からパラメータを取得するには、2 つの手順を実行する必要があります。この問題をより効率的に解決するにはどうすればよいですか?Bootstrap
application.ini
Zend_Registry
zend-framework - Zend_Config_Ini application.ini でのクラス定数の使用
クラスの 1 つでいくつかの定数が定義されており、application.ini でそれらを使用したいのですが、これは可能ですか?
これは機能していないようです。文字列として解析するだけです
zend-framework - コントローラーから Zend_Form にパラメーターを渡す方法は?
この質問はすでにここで回答されていることを知っています。しかし、これは私にはうまくいきません。Form は PluginLoader を使用して生成されます。
Payment.php:
ご覧のとおり、load メソッドはクラス名のみを返すため、new $formClass();
等しいのnew Form_Payment()
ですが、なぜこれがパラメーターを受け入れないのですか?
global-variables - Zend\Config の使用方法 (アプリケーション全体の変数)
主な質問は自明ですが、いくつかの副次的な例を挙げます。
データベースを理解するのに問題がありますが、ServiceManager のもので構成を解決できるようです
クッキー名に定数を使用したいので、競合が発生した場合に簡単に変更できます。
$config = new \Zend\Config\Config(include $_SERVER['DOCUMENT_ROOT'] . '/../config.php');
現在、グローバル config.php ファイルにアクセスするたびに呼び出しています。以前のソリューションの多くは Zend 1 にありました (Zend_Registry など)。これは正しい方法ですか?それを何度も使うのは少し扱いにくいようです。モジュールの構成ファイルを利用してモジュール全体の変数/定数を設定する方法はありますか?
完全に見逃していない限り、Zend 2 には application.ini はありません。
recaptcha の公開鍵/秘密鍵の保存
また、セッション変数用の構成ファイルを使用しています ( と同じ考え方
$_SESSION[CONST_NAME]
)。これにより、上記の構成ファイルが非常に扱いにくくなります。セッション名をハードコーディングしたほうがよいですか? お気に入り:
php - Zend2 を使用して設定を読み書きするモジュラーな方法
モジュールにたくさんの設定を入れたいのですが、アプリから書き込み可能にする必要があります。それらはアプリケーション設定であるため、そのテーブルはあまり効率的ではないと思いました (1 行しかありません)。
Zendモジュールを見つけましたZend\Config
。これは、Zendで使用できる構成ファイルを作成できるようです。
module.config.php
?に書き込むことをお勧めします。それとも別のファイルに?標準モジュール構成にロードできますか?
私はZendとこの完全にモジュール化されたアプローチにかなり慣れていないので、それについて明確にしたいと思います。
zend-framework2 - モデルクラスのグローバル設定にアクセスするZendフレームワーク2
コア Zend モジュールを拡張しないモデル クラスがあります。このモデルは、私の以前の Zend Framework 1 アプリケーションからインポートされました。名前空間に変換することで、そのメソッドを呼び出すことができます。私が抱えている問題は、定義されたメソッドの側でグローバル構成を読み取ることです。
コントローラーの場合、以下のコードを使用してグローバル構成にアクセスできました
しかし、モデル クラスの側で構成にアクセスするにはどうすればよいでしょうか。以下は私のモデルクラスの様子です
Zend フレームワーク 2 は初めてです。これを実現する方法を教えてください。
上記のモデルとは、何らかのビジネス ロジックを含む (MVC モデル クラス) ことを意味します。