Php 如何在laravel路线中传递字符串

Php 如何在laravel路线中传递字符串,php,laravel,Php,Laravel,$doc有一个链接。比如说 $doc = /storage/source/logo.jpg 我有下面这样的观点 <a class="dropdown-item" href="{{url('admin/download/take')}}/{{$doc}}">{{$doc}}</a> 这是我的职责 public function getGo(Request $request, $link){ print_r($link); } 该函数不起作用,lara

$doc有一个链接。比如说

$doc = /storage/source/logo.jpg
我有下面这样的观点

<a class="dropdown-item" href="{{url('admin/download/take')}}/{{$doc}}">{{$doc}}</a>
这是我的职责

    public function getGo(Request $request, $link){
    print_r($link);

}
该函数不起作用,laravel route无法接受任何字符串。如何在函数

Set name()中获取路由的哪个别名的字符串

 Route::get('download/take/{link})','IncomingController@getGo')->name('download.take.link');
改变你的锚链如下

<a class="dropdown-item" href="{{ route('download.take.link', ['link' => base64_encode($doc)])}}">{{$doc}}</a>
试试这个

$doc=/storage/source/logo.jpg


如果不起作用,请在中配置文件系统

filesystems.php

“public”=>[
“驱动程序”=>“本地”,
'root'=>存储路径('app/public'),
'url'=>env('APP_url')。/storage',
“可见性”=>“公共”,
],
这里
'url'=>env('APP_url')。/storage'


根据您的需要配置此文件

尝试在url中将其作为json字符串传递,然后在控制器中将其解码回url

对于字符串来说效果很好。我的链接是这样来的/storage/images/something.jpg…有什么建议吗?你已经在函数getGo()中得到了$link。这就是你的意思吗?我还建议你传递链接编码格式,并在函数中对其进行解码。传递字符串可以正常工作,但如果是链接就不起作用。是的!这就是为什么,我建议对它进行编码。我将编辑它作为回答@阿比杜萨塔拉齐兹可以很好地处理字符串。我的链接是这样来的/storage/images/something.jpg…有什么建议可以让我在函数中实现这个功能吗?@abidussattarazz使用“”创建一个字符串,然后您可以这样做that@KamleshPaul如果传递的字符串包含链接/url或其他内容,将导致404错误。请尝试存储::url($doc)
<a class="dropdown-item" href="{{ route('download.take.link', ['link' => base64_encode($doc)])}}">{{$doc}}</a>
 public function getGo(Request $request, $link){
     $link = base64_decode($link);
     print_r($link); // here you will have link you have passed with URL.
 }