由于#in变量,Laravel路由失败

由于#in变量,Laravel路由失败,laravel,laravel-5,routing,Laravel,Laravel 5,Routing,我有一条这样的路线: Route::get('/id/{did}', function ($did) { echo $did; }); 变量$did包含如下序列号1705SN#A5F 当我返回$did时,我只得到1705SN。我怎样才能改变这种行为 我在运行拉威尔5.4 问候 da.eXecutoR不将#(散列)之后的数据发送到服务器。简单 如果你想#试着用它的html代码代替。当你形成你的url时,像这样使用它:“/id/”。urlencode($did)因此您的特殊字符将被发送到服

我有一条这样的路线:

Route::get('/id/{did}', function ($did) {
    echo $did;
});
变量
$did
包含如下序列号
1705SN#A5F

当我返回
$did
时,我只得到
1705SN
。我怎样才能改变这种行为

我在运行拉威尔5.4

问候 da.eXecutoR

不将#(散列)之后的数据发送到服务器。简单


如果你想#试着用它的html代码代替。

当你形成你的url时,像这样使用它:
“/id/”。urlencode($did)
因此您的特殊字符将被发送到服务器

您可以在传递带有url的“1705SN#A5F”时使用base64_编码。 如下

<a href="{{url('testnumber/'.base64_encode("1705SN#A5F"))}}">Click</a>

然后可以像这样解码

Route::get('testnumber/{number}',函数($number){
$decoded=base64_decode($number);
回声$解码;

});

urlencode您的参数使用
urlencode()
有问题的字符串。