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

Laravel无法解密控制器上的加密ID,laravel,Laravel,单击下面刀片文件上的提交按钮后,我无法解密控制器上的加密值 控制器: 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($d

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

控制器:

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);
}
Blade:(my.Blade.edit)


我希望我的
dd()上有一个整数值但我仍然得到一个加密字符串。

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

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


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

encrypt($id)
来自
edit()
等于
$decrypted\u id
,如果你“按原样”比较它们?是的,例如,变量id是
123
,那么我将对其进行加密,解密后它应该返回到
123
。我的意思是,散列字符串是否已经相等?啊,它们不是。但是我仍然得到一个长的字母数字字符串。您解密了错误的字符串。谢谢,我对ID加密了两次,因为我索引中的行上已经有一个加密ID了
{{ Form::open(['route' => ['route.update', $encrypted_id ], 'method' => 'PATCH']) }}

{{ Form::button('Update', ['type' => 'submit', 'name' => 'update']) }}

{{ Form::close() }}