ugyanolyan típusú url
Sziasztok, az lenne a kérdésem, hogy a Routing-nál, hogy oldhatom azt meg, hogy két ugyanolyan típusú url-t használjak?
(konkrétan Silex-ben kellene, de ha megadjátok, hogy más rendszereknél mi a megfelelő utasítás, akkor már el tudok indulni)
Jelenleg mappákat használok, de ezt el kellene hagyni. Egy egyszerű példa, amit át kellene alakítani:Tehát itt a
Persze egy új osztállyal ezt könnyen megoldhatnám, de az nagyon nem tetszik.
■ (konkrétan Silex-ben kellene, de ha megadjátok, hogy más rendszereknél mi a megfelelő utasítás, akkor már el tudok indulni)
Jelenleg mappákat használok, de ezt el kellene hagyni. Egy egyszerű példa, amit át kellene alakítani:
$app = new Silex\Application();
$app->get('/cikk/{id}', function ($id) use ($app) {
$contents = array('kapcsolat', 'linkek');
if (in_array($id, $contents)) {
return 'En vagyok a cikkoldal: ' . $id;
}
$app->abort(404, 'A keresett cikk nem talalhato');
});
$app->get('/termek/{id}', function ($id) use ($app) {
$contents = array('alma', 'korte');
if (in_array($id, $contents)) {
return 'Ez itt a termekbemutato: ' . $id;
}
$app->abort(404, 'A keresett termek nem talalhato');
});
$app->error(function (\Exception $e) use ($app) {
return 'Ajjajj...' . $e->getMessage();
});
$app->run();
/cikk/kapcsolat
, /cikk/linkek
, /termek/alma
, /termek/korte
oldalakra kapunk tartalmat, máskülönben hibaoldal. Az a feladat, hogy le kellene vágni a mappákat, azaz ezután a következő url-eket szeretnem /kapcsolat
, /linkek
, /alma
, /korte
Sajnos nem jövök rá, hogy miként tudnék a cikkek részből úgy kiugrani, hogy a termékek részhez jussak.Persze egy új osztállyal ezt könnyen megoldhatnám, de az nagyon nem tetszik.
explode?
explode??
(a konkrét példát nézve egy
goto 10
utasítást szeretnék:)Pontosan mire is gondolsz? (lehet, hogy túldimenzionálom a problémát, de az explode-t nem tudom elhelyezni most ebbe az egészbe)
Köszi!
Az a feladat, hogy le kellene
Erre válaszoltam:
list(, , $mappa) = explode('/', $url);
nem string kezelési
Másként fogalmazva:
/alma
url-re kiírja a 10. sor alapján, hogy alma? Valahogy kilépni az adott ágból, és a következő illeszkedő ágban újrakezdeni a futást?Átirányítás?
Pontosítás!
$app->get('/{id}', ...
Így fog illeszkedni a
/kapcsolat
, illetve az/alma
url. (ez alatt értem azt, hogy "ugyanolyan típusú url", de utólag érzem, hogy elég bénácska címet sikerült adni a témának:)Ám ekkor hiába a
redirect
, illetve az újRequest
, minden lekérés az első ágba fut be. Ezért gondoltam én, hogy talán megoldható lenne az, hogy miután az első ágba belement, majd nem talált tartalmat, valahogy tovább kellene küldeni.