Laravel无法在控制器上解密加密ID



我在单击下面的刀片文件上的"提交"按钮后无法解密控制器上的加密值。

控制器:

public function edit($id)
{      
  $encrypted_id = encrypt($id);
  return view('my.blade.edit', compact('encrypted_id'));
}
public function update(Request $request, $id)
{
  $decrypted_id = decrypt($id);
  dd($decrypted_id);
}

刀片:( my.blade.edit(

{{ Form::open(['route' => ['route.update', $encrypted_id ], 'method' => 'PATCH']) }}
{{ Form::button('Update', ['type' => 'submit', 'name' => 'update']) }}
{{ Form::close() }}

我期望我的dd();有整数值,但我仍然会得到一个加密的字符串。

好吧,正如我已经在评论中所写的那样,首先简单是检查预期输出和精确输出。

到目前为止,我们发现该值已发送到视图,并不等于update()方法中收到的值。

id已加密两次,但是我们从问题中没有看到代码中的两个encrypt()调用。可能是其他一些代码层。

最新更新