Loomine URL Zend Custom View Helper
See võib tunduda lihtne, kuid olin peksma mu peas püüame luua URL kohandatud vaate abistaja Zend Framework . Olen suunamises setup mis saab mooduli alamdomeeni kasutusel nii et ma ei saanud kasutada lihtsat kõva URL.
Põhimõtteliselt kuid viidates näiteks esi kontroller võimalik haarata ruuteri ja koguda url. Koguge on funktsioon, mida kasutatakse eesmärgiga abimees. URL on üles ehitatud alates array moodul, kontroller, tegevus jne, millele järgnes teine parameeter liinil kasutada. Kood on järgmine:
<? Php / ** * Vaata abimees, mis tagastab link kategooria URL * * @ Author Lloyd Watkin * @ Alates 25/01/2010 * @ Paketi ViewHelper * @ Subpackage LinksUrl * / klassi Pro_View_Helper_LinksUrl laieneb Zend_View_Helper_Abstract { / ** * Annab link kategooria URL * * @ Param Doctrine_Record $ kategooria * @ Param string $ moodul * @ Param string $ töötleja * @ Param string $ tegevus * @ Tagasi string Url * / avaliku funktsiooni linksUrl ($ kategoorias $ module = "www" $ Töötleja = 'lingid', $ action = "index") { $ Ruuter = Zend_Controller_Front: getInstance () -> getRouter (); tagasi $ ruuter-> koondama (array ( 'Mooduli' => $ mooduli "Vastutav töötleja" => $ kontroller, "Meede" => $ hagi "Kategooria" => "{$ kategooria-> id} - {$ kategooria-> name}", ), "Www-indeks"); } }
Teine võimalus seda teha on tugineda Zend_View_Helper_Url ise ja helistage Url meetod (kui soovite kasutada abistaja ise). Seda saab teha kasutades järgmist koodi:
<? Php / ** * Vaata abimees, mis tagastab link kategooria URL * * @ Author Lloyd Watkin * @ Alates 25/01/2010 * @ Paketi ViewHelper * @ Subpackage LinksUrl * / klassi Pro_View_Helper_LinksUrl laieneb Zend_View_Helper_Abstract { / ** * Annab link kategooria URL * * @ Param Doctrine_Record $ kategooria * @ Param string $ moodul * @ Param string $ töötleja * @ Param string $ tegevus * @ Tagasi string Url * / avaliku funktsiooni linksUrl ($ kategoorias $ module = "www" $ Töötleja = 'lingid', $ action = "index") { $ Link = new Zend_View_Helper_Url (); tagasi $ link-> url (array ( 'Mooduli' => $ mooduli "Vastutav töötleja" => $ kontroller, "Meede" => $ hagi "Kategooria" => "{$ kategooria-> id} - {$ limukas}", ), "Www-indeks"); } }
Nii peaaegu identsed. Ei ole raske asi, mida teha raamistiku, kuid ei saagi teid välja;)


















































Sa tead, sa oleks võinud lihtsalt kasutada eesmärgiga objekt kättesaadavaks laiendades Zend_View_Helper_Abstract helistada olemasolevate url helper, selle asemel et luua uusi.
Lihtsalt $ this-> view-> url (...);