有没有可能;反向;php Stru_shuffe?

有没有可能;反向;php Stru_shuffe?,php,reverse,shuffle,Php,Reverse,Shuffle,我只是想知道是否有可能在php中反转字符串洗牌函数 例如: $shuffle = str_shuffle("popcorn"); echo $shuffle; 如果将页面刷新3次,您可能会看到如下内容: 奥罗普森 奥普恩克罗 opcrnop 等等 有没有办法将其“拼凑”回“爆米花”?如果我们谈论的是取消str_shuffle操作,那么这是不可能的,尽管php文档中说:“此函数不会生成加密安全值”。反转str_shuffle中使用的rand算法是一项非常重要的加密任务 但让我们幻想一下。假设

我只是想知道是否有可能在php中反转字符串洗牌函数

例如:

$shuffle = str_shuffle("popcorn");
echo $shuffle;
如果将页面刷新3次,您可能会看到如下内容:

  • 奥罗普森
  • 奥普恩克罗
  • opcrnop
等等


有没有办法将其“拼凑”回“爆米花”?

如果我们谈论的是取消str_shuffle操作,那么这是不可能的,尽管php文档中说:“此函数不会生成加密安全值”。反转str_shuffle中使用的rand算法是一项非常重要的加密任务

但让我们幻想一下。假设我们有一本字典,那么我们可以这样做:

<?php

$list = array('apple', 'popcorn', 'banana');

$shuffle = str_shuffle("popcorn");

$letters = count_chars($shuffle,1);
foreach ($list as $word) {
  if ($letters == count_chars($word,1))
    echo "$word\n";
}

您知道这是随机输出吗?没有可复制的算法,所以没有“反缓冲”,我不这么认为。您必须创建一个类或其他东西来存储原始的未缓冲字符串。我删除了一条关于将其存储在会话/cookie中的注释,因此我重写了它,但添加了更多内容。您可以使用会话(或cookie),每次将其数量增加1,并将原始字符串存储在会话数组中。一旦它到达条件语句的第三个shuffle,就显示原始字符串。我可以写出来,但我宁愿让你试着把它写出来,这样你就可以学习了。如果你在某个地方碰壁,你可以得到更多的帮助。不用担心,谢谢大家的想法。我正在为我教的编程课程偷取有趣的练习:)也就是说,如果你有一本有效单词词典,你可以用字符数做一些有教育意义的猜测。。。废话。现在我得去写代码了。谢谢