1

デフォルトのビュー パスは view/scripts ですが、別のビュー/abc/scripts があるため、デフォルト システムではデフォルト パスを使用し、abc システムでは abc パスを使用します。

ブートストラップから設定するレイアウトプラグインがあるので、パスのいずれかが表示されます。

しかし、abc システムの場合、デフォルトとまったく同じように表示される可能性があることに気付きました。ファイルをabcフォルダーにコピーできますが、ファイルが重複し、コンテンツはまったく同じになります。

したがって、コントローラー以外の1つの場所にコードを配置できる方法があるかどうか疑問に思っています(すべてのコントローラーまたは他のコントローラーが拡張する代わりに)ビューファイルが存在しない場合は、デフォルトのパスを調べますファイル?

4

2 に答える 2

1

ブートストラップで複数のパスを追加できます

protected function _initView(){
    $view = new Zend_View();

    $view->addScriptPath(APPLICATION_PATH . 'path/to/path1');
    $view->addScriptPath(APPLICATION_PATH . 'path/to/path2');

    $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper(
        'ViewRenderer'
    );
    $viewRenderer->setView($view);

    return $view;
}
于 2013-08-03T10:54:33.727 に答える
0

file_exists 関数を使うのは簡単だと思います。

于 2013-08-03T11:00:46.733 に答える