简体   繁体   English

在laravel 5.4中,将一个变量从Route传递给Controller的最简单方法是什么?

[英]What is the easiest way to pass a variable from Route to Controller in laravel 5.4?

This might be super simple but I'm asking because I'm new to this. 这可能非常简单,但我问,因为我是新手。

I have a View named 'defaultpage' , I have two routes and one controller as below. 我有一个名为'defaultpage'的视图,我有两个路由和一个控制器,如下所示。

Route::get('about', 'PageController@showPage');

Route::get('welcome', 'PageController@showPage');

.

class PageController extends Controller
{
    public  function showPage(){

        return view('defaultpage', compact('var'));
    }
}

I want to pass a variable named $var from above routes to below controller , If $var is coming from 'about' route , $var should be equal to a value given in about route and the controller will pass it to the view , and same with the 'welcome' route. 我想将一个名为$ var的变量从上面的路由传递到下面的控制器,如果$ var来自'about'路由,$ var应该等于about route中给出的值,控制器会将它传递给视图,并且与“欢迎”路线相同。

How can I do this . 我怎样才能做到这一点 。 Any help will be appreciated . 任何帮助将不胜感激 。 Thank you . 谢谢 。

Easiest way to pass variable from route to controller if the varible is coming from view is to put it a link as below 如果变量来自视图,将变量从路径传递到控制器的最简单方法是将其链接如下所示

<a href="/myRoute/{{ $variableName }}">Click me</a>

In routes: 在路线:

Route::get('myRoute/{variable}', 'ControllerName@getFunction');

In Controller 在控制器中

public function getFunction($variable){
  echo $variable;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM