0

ウェブページをレンダリングするためにMustache for phpを使用しています。私はgithubの dev-branch でコードをいじっていて、いくつかの興味深いハウツーを見つけました。たとえば、パーシャルのヘルパー関数を定義することで、パーシャルを動的にロードできることを知っています。しかし、見つけられないように見えるのは、次のようにタグをネストする方法です。

{{article.{{page.name}}}}

これは、ある種のヘルパーまたは高次関数の助けを借りて可能ですか?

4

1 に答える 1

0

ラムダを使用して同様のことを実現できます。Mustache.php の wikiからの引用:

値が呼び出し可能な場合 (無名関数など)、呼び出し可能オブジェクトが呼び出され、テキスト ブロックが渡されます。

したがって、口ひげのテンプレートでは、次のようになります。

{{#article_field}}{{page.name}}{{/article_field}}

次のようなビュー クラスを使用します。

class View_Page {

    public $_article;

    public function article_field()
    {
        return function($string)
        {
            return $this->_article[$string];
        }
    }
}

プロパティの値articleに存在する名前のフィールドを出力します。page.name

Mustache.phpの公式 wikiにアクセスして、Lambda と callable の詳細を確認してください。

于 2013-01-10T17:15:59.540 に答える