ugrás a tartalomhoz

Több nyelvű route kezelése PHP-ben

inf3rno · 2010. Ápr. 16. (P), 06.38
Sziasztok!

FrontControllerből szeretném átirányítani a kéréseket a Controllerekbe. Úgy gondoltam, hogy az FC létrehozza a sessiont, meg beállítja az autoloadot a projectre, a megfelelő Controller példányosítását meg rábízza a Route objectekre.

A dolog annyiban problémás, hogy a Controllereim angol nyelvűek, az oldal URL-jei pedig magyarok. Szóval mondjuk a http://oldal.hu/termekek-re nekem létre kéne hoznom a Product Controller egy példányát, és mondjuk meghívni azon az index metódust. (Szeretnék egy olyan megoldást csinálni, amit később könnyen ki lehet bővíteni más nyelvekkel is.)

Egyelőre úgy gondoltam, hogy valami ilyesmi XML-el konfigurálom a dolgot, és ebből gyártatok regexeket a rendszerrel:

<sitemap>
	<controller:product params:max="1" hungarian:url="termekek" />
	<controller:user params:max="1" hungarian:url="felhasznalok">
		<controller:profile hungarian:url="adatok" />
	</controller:user>
	<controller:statistic admin:level="1" hungarian:url="statisztikak" />
</sitemap>
Viszont szívesen várom a témában tapasztaltabbak tanácsait, mert gondolom van jobb megoldás ennél.
 
1

Több fájl

inf3rno · 2010. Ápr. 18. (V), 18.00
Még azon gondolkodok, hogy szétszedem több fájlra nyelvenként, viszont akkor az url-ben is jelezni kéne valahogyan, hogy milyen nyelvről van szó. Általában elég lehet az accept-language header, vagy session-ben tárolt nyelv választás, de ha külső oldalról jön be valaki, akkor nehézkes az url-ből kikeresni, hogy milyen nyelvről van szó, főleg hogy lehetnek elnevezésbeli azonosságok is.