在 laravel 5.4 中将变量从 Route 传递到 Controller 的最简单方法是啥?

Posted

技术标签:

【中文标题】在 laravel 5.4 中将变量从 Route 传递到 Controller 的最简单方法是啥?【英文标题】:What is the easiest way to pass a variable from Route to Controller in laravel 5.4?在 laravel 5.4 中将变量从 Route 传递到 Controller 的最简单方法是什么? 【发布时间】:2017-06-24 15:49:06 【问题描述】:

这可能非常简单,但我问是因为我是新手。

我有一个名为 'defaultpage' 的视图,我有两条路线和一个控制器,如下所示。

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

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

.

class PageController extends Controller

    public  function showPage()

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

我想将一个名为 $var 的变量从上面的路由传递到下面的控制器,如果 $var 来自 'about' 路由,则 $var 应该等于 about 路由中给定的值,控制器会将它传递给view ,与“欢迎”路线相同。

我该怎么做。任何帮助将不胜感激 。谢谢。

【问题讨论】:

尝试改变你的函数看起来像这样public function showPage($var) 完成。但是如何将 $var 从路由传递给函数@WdyDev $var 来自哪里??用户是否在插入该值? 没有。 $var 被硬编码到路由中 Pass fixed variable from route to controller in Laravel的可能重复 【参考方案1】:

如果变量来自视图,则将变量从路由传递到控制器的最简单方法是将其放在下面的链接

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

在路线中:

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

在控制器中

public function getFunction($variable)
  echo $variable;

【讨论】:

谢谢,但我怎样才能将 $var 硬编码为路由并执行此操作?

以上是关于在 laravel 5.4 中将变量从 Route 传递到 Controller 的最简单方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 5.4 TokenMismatchException 和注销

Route [password.reset] 未在 Laravel 5.4 中的 ResetPasswords.php 中定义

在Laravel的宁静路线5.4

从 url laravel 5.4 中删除公共

如何在 laravel 5.8 中将变量传递给路由?

Laravel 5.4:API 路由列表