如何在PHP或MySQL中对文本的随机字符串使用类似mod的操作

时间:2018-08-03 15:28:04

标签: php mysql

我有一个问题,我想随机但连续地订购一组物品。

例如给定集合:Apples Bananas Grapes Limes Pineapples

我可能想要Limes Pineapples Apples Grapes BananasGrapes Bananas Pineapples Apples Limes

我不在乎顺序是什么,只要它不是字母/长度等明显的东西即可。我宁愿不必存储该顺序,并且希望它可以重复,所以我想一个简单的算法。

例如,如果这些是数字而不是字符串,请说10000 12345 12444 17654 199999我可以对它们进行173(或其他任何形式)修改,并以此排序:

17654 199999 12345 10000 12444

我该如何处理utf8字符串?最好有一个可以使用任意长度的解决方案,但是在我的情况下,它们的范围可以从2个字符到63个字符。

我可以遍历字符串并汇总所有字符的unicode代码,但是我觉得可能有一种更狡猾/更简单的方法。理想情况下,我可以相对简洁的方式将其放入MySQL查询中。

谢谢!

1 个答案:

答案 0 :(得分:3)

计算字符串的哈希值并以此排序:

SELECT string
FROM yourTable
ORDER BY MD5(string);