Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZF] Zend_Router_Regex i pusta wartość
Koniczynka
post
Post #1





Grupa: Zarejestrowani
Postów: 61
Pomógł: 0
Dołączył: 24.05.2006

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


Witajcie,

Od pewnego czasu walczę z jednym nieprzyjemnym problemem routera w Zendzie Frameworku.


Kod
routes.czytaj.type = "Zend_Controller_Router_Route_Regex"
routes.czytaj.route = "([^-].*)/news/n_(\d+)_(.+)"
routes.czytaj.defaults.module = "cms"
routes.czytaj.defaults.controller = "news"
routes.czytaj.defaults.action = "czytaj"
; routes.czytaj.map.1 = "separator"
routes.czytaj.map.1 = "id"
routes.czytaj.map.2 = "link"
; routes.czytaj.reverse = "%s/news/n_%s_%s"
1

Problem polega na tym, że ścieżka do newsa będzie wyglądała albo tak:
www.domena.pl/news/n_10_link-do-newsa
albo tak:
www.domena.pl/english/news/n_15_link-do-newsa

Chciałbym, aby mój router potrafił rozpoznać, czy zmapowana wartość separator (która jest teraz zakomentowana) jest pusta czy nie i niezależnie od tego przekierowywał do kontrolera news, wykonując potem akcję czytaj. Wiem, że mogę rozbić ten jeden wpis na dwa, ale to wydaje mi się bardzo ekstremalne rozwiązanie (tym bardziej, że będę miał kilka takich sytuacji).

([^-].*) to wynik moich ostatnich prób. Przedtem wstawiałem tam (.+), (.*), . , ([.+]|()) - albo coś w tym stylu. Jednak żaden ze wzorów nie pasował do formatu linka bez separatora (www.domena.pl/news/n_10_link-do-newsa).

Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 24.12.2025 - 15:46