如何在laravel重定向中包含变量

时间:2019-05-03 20:11:00

标签: laravel redirect laravel-5

我在Laravel 5控制器中有一个变量,试图将其包含在重定向链接的url中,但是我尝试过的任何事情似乎都没有效果,我的代码如下。

$newChallenge = ((int) request('challenge_id') + 2);

return redirect('/texttext/{{$newChallenge}}');

但是,它不使用$ newChallenge表示的变量,而是
     “ {{newChallenge}}”作为字符串,应该怎么做?

2 个答案:

答案 0 :(得分:1)

{{ }}适用于刀片文件。

如果您真的想要这些{}括号,我认为您可以进行return redirect('/texttext/{ $newChallenge }');

或者只是return redirect(sprintf('/texttext/%s'), $newChallenge));

return redirect('/texttext/'.$newChallenge);

编辑:此外,您的重定向可能会受益于命名路由。 the WebLogic OSGi documentation

答案 1 :(得分:0)

也许您可以将其更改为查询参数

喜欢

return redirect('/texttext/?=newChallenge={{$newChallenge}}');

如果您想使用

return redirect('/texttext/{{$newChallenge}}');

应该是下面的样子

Route::get('texttext/{{newChallenge}}', 'YourController@newChallenge');

和newChallenge签名将function newChallenge(Request $request, $newChallenge)

如果您想使用类似return redirect(route('new-challenge', $newChallenge));

只需添加路线名称即可

Route::get('texttext/{{newChallenge}}', 'YourController@newChallenge')->name('new-challenge');

我还没有测试,但是我认为它应该可以工作。