【问题标题】:How to pass variable into route in laravel 5.8?如何在 laravel 5.8 中将变量传递给路由?
【发布时间】:2020-01-23 23:31:51
【问题描述】:

routes/web.php

$urls = \App\Myurls::all();

foreach($urls as $url){
  Route::get($url->en,  function() {
    session(['lang'=> 'en']);
    return view( 'en.'.$url->view );
  });
}

错误:未定义变量:url(在 return view() 行中)

如何将$url 变量传递给 Route::get 函数?

【问题讨论】:

    标签: php laravel url-routing laravel-routing laravel-5.8


    【解决方案1】:

    您必须使用function() use ($url)

    $urls = \App\Myurls::all();
    
    foreach($urls as $url){
      Route::get($url->en,  function() use ($url) {
        session(['lang'=> 'en']);
        return view( 'en.'.$url->view );
      });
    }
    

    【讨论】:

      【解决方案2】:

      你需要useclosure中的变量:

      Route::get($url->en,  function() use ($url) {
        session(['lang'=> 'en']);
        return view( 'en.'.$url->view );
      });
      

      【讨论】:

        猜你喜欢
        • 2015-03-16
        • 2015-12-02
        • 2019-08-12
        • 2017-05-03
        • 2015-02-22
        • 2015-01-06
        • 2017-11-03
        相关资源
        最近更新 更多