php - Laravel: Getting Route Parameters in Route::group() Closure -
i have app running on laravel 4.2, , trying implement complex routing mechanism. have route group set using:
route::group(['domain' => '{wildcard}.example.com'], $closure); i need able check $wildcard parameter in closure group -- meaning before request gets passed controller (i need defined route::get() , route::post() depending on subdomain).
an example of i'd follows:
route::group(['domain' => '{wildcard}.example.com', function ($wildcard) { if ( $wildcard == 'subdomain1' ) { route::get('route1', 'subdomain1controller@getroute1'); route::get('route2', 'subdomain1controller@getroute2'); } else if ( $wildcard == 'subdomain2' ) { route::get('route1', 'subdomain2controller@getroute1'); route::get('route2', 'subdomain2controller@getroute2'); } } ); of course, above not work. parameter passed route::group() closure instance of router, not parameters defined in array. however, there must way access parameters -- know fact i've done before, don't remember how (and can't find solution anywhere online).
i know can use php's lower-level methods retrieve url, explode() it, , check subdomain way. i've done before using laravel's methods, , if possible, i'd prefer way (to keep things clean , consistent)
does else know solution? in advance!
use route::input() function:
route::group(['domain' => '{wildcard}.example.com', function ($wildcard) use ($wildcard) { if ( route::input('wildcard') === 'subdomain1' ) { route::get('route1', 'subdomain1controller@getroute1'); route::get('route2', 'subdomain1controller@getroute2'); } else { route::get('route1', 'subdomain2controller@getroute1'); route::get('route2', 'subdomain2controller@getroute2'); } } ); see "accessing route parameter value" in docs.
Comments
Post a Comment