0

I am trying invokable controller in Laravel :

php artisan make:controller ProvisionServer --invokable

And I want to do something like :

Route::get('/proviser/{page}',[App\Http\Controllers\ProvisionServer::class, '__invoke'])
       ->name('proviser.'.$page)
       ->where('page','index|about|contact');

In order to call 'About' url like

route('proviser.about')

Obviously, this seems not working. I get

Undefined variable $page

Is there anyway to do it ? thanks

Cutis
  • 949
  • 1
  • 13
  • 32

1 Answers1

0

you can make $pages array and defined router like this

$pages = ['index','about','contact'];
foreach($pages as $page){
    Route::get('proviser/'.$page,[App\Http\Controllers\ProvisionServer::class, '__invoke'])
       ->name('proviser.'.$page);
}
Kamlesh Paul
  • 11,778
  • 2
  • 20
  • 33