2013-07-22 74 views
1

我有多個視圖助手路徑,其中一些路徑可能包含與其他註冊路徑同名的視圖助手。指定在調用視圖助手時使用的助手路徑

例如/view/helper/path1可能包含myViewHelper,而/view/helper/path2也可以包含不同看法幫手,但具有相同的名稱myViewHelper

很明顯,我打電話給$this->myViewHelper時可能遇到一些問題;我不能依賴獲取我想要的視圖幫助器,因爲這取決於哪個路徑位於堆棧的頂部。

有沒有一種方法可以指定我想在任何給定時間使用哪條路徑?一個完全合格的路徑,如果你喜歡。

感謝

回答

0

命名空間可能是你在找什麼:http://php.net/manual/en/language.namespaces.php

但是如果你給多一點背景下你的問題,有可能是一個更好的實現,很難從你告訴」至今說過。

什麼時候你會在path1中的helper中使用helper而不是helper?

+0

我考慮過使用名稱空間,但我不確定(如何)它將有助於從堆棧中選擇給定的路徑。在上下文方面:我擁有的是一個「頁面渲染器」類,它將從配置文件中獲取視圖助手列表並使用選項呈現它們。該渲染器應該只使用來自給定幫助程序路徑的視圖助手。看起來我可能會更好,無論是清理視圖助手路徑堆棧,還是僅使用單獨的視圖對象來註冊我需要的單個路徑或(可能更好的選項)。 – James