1

以下のようなクラスがありDisplay、ビューファイルを呼び出すときにいくつかのテキストとリンクを出力したいのですが、現在は正常に機能しています。

問題は、Twig PATHヘルパーまたは同等のPHPを呼び出して、PHPクラスの任意のルート名からルートを取得する方法です。

myClass 
{
    // Other Code

    function Display($depth)
    {
        echo "<div class=\"heirarchy\">";

        for($i = 0; $i < $depth; $i++)
        {
            echo '&nbsp;';
        }

        echo "<a href=\"path('path_name')\" ".$this->description."</a>";

        if($this->isLeaf())
        {
            echo ' (Task)';
        }

        echo "</div>";

        foreach($this->children as $key => $value)
        {
            $value->Display($depth + 2);
        }

    }

}

この関数は再帰的であるため、小枝関数に実装する方法がわかりません。

つまり、クラスのルート名からルートパスを取得するにはどうすればよいですか。

4

1 に答える 1

4

ルーターのgenerate()メソッドは Twig の に似てpath()おり、ルートの名前から URL を生成します。

$this->get('router')コントローラーからクラスに渡すだけで、次のように使用できます。

$router->generate('my_route').

また、この疑似 OO クラス (内部に HTML を含む) を使用する意味がわかりません。
この目的でテンプレートを使用できます。

于 2012-05-29T23:34:40.713 に答える