Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ZEND] Zmiana domyślnego routingu
zordon
post
Post #1





Grupa: Zarejestrowani
Postów: 358
Pomógł: 78
Dołączył: 4.11.2008
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Bawię się trochę routingiem i spłodziłem oto takie coś:

Plik Bootstrap.php
  1. protected function _initRoute(){
  2. $frontController = Zend_Controller_Front::getInstance();
  3. $router = $frontController->getRouter();
  4. $route = new Zend_Controller_Router_Route_Regex(
  5. '([^-]*),([^-]*)\.html',
  6. array('controller' => 'index',
  7. 'action' => 'index'),
  8. array(1 => 'controller',
  9. 2 => 'action'),
  10. '%s,%s.html'
  11. );
  12. $router->removeDefaultRoutes();
  13. $router->addRoute('default', $route);
  14. }

Wstępnie działa, ale ja chcę zrobić coś takiego, żeby zupełnie zastąpić domyślny routing zenda: /controller/action/param1/v1/p2/v2/...
moim, w stylu: /controller,action,p1,v1,p2,v2

Da się to zrobić dynamicznie, dla wszystkich ścieżek, tak jak działa to domyślnie? Bo w tej chwili żeby dodać jakiś parametr musiałbym go ręcznie dodawać do ścieżki: array(1 => 'controller', 2 => 'action', 3 => 'p1', ... ) i '%s,%s,%s, ... ,.html'. Mógłbym dodać trzeci parametr array(1 => 'controller', 2 => 'action', 3 => 'params' ) i rozbijać go regexami, ale to chyba mało wydajne i eleganckie... Uszczęśliwiłby mnie również sposób na prostą "podmianę" domyślnego separatora "/" na np "," i ew dodanie na końcu ".html".

Ten post edytował zordon 26.04.2010, 12:13:27
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 04:51