将数组编码为固定长度的字符串

Encode array to fixed length string

我正在尝试实现与 PCPartPicker 的列表固定链接功能类似的功能。

https://au.pcpartpicker.com/list/

基本上是根据列表中的项目生成永久链接。关键部分是生成一个字符串,它应该是:

  1. 独一无二
  2. 坚持
  3. 定长

我正在考虑对包含产品 ID 的数组进行编码,但找不到正确的实现方法。

Base64和类似的(如Hashids库)可以确保它的唯一性和持久性,但是当数组有很多项时它最终会很长。

是否有其他方法对数组进行编码,或者是否有其他方向可以实现此功能?

提前致谢。

无法为包含所有信息的任意长度列表生成唯一的固定长度字符串 - 总有一些长度不适合。

由于您的网站有数据库,您可以生成UUID 并在数据库中存储列表以及UUID。为了节省 space 和工作量,您可以仅在用户按下 "get permalink" 按钮或类似按钮时将其保存到数据库中。