【发布时间】:2020-01-07 04:11:31
【问题描述】:
我是 php 新手,我正在尝试从一组让我们说 4 个值的数组中获取随机值,而不重复数组组的值并获取该值的键。我在页面上有多个地方可以回显该值。我试过 array_rand , shuffle() 但他们重复的值不保持唯一性。
$fruit = [
'f1' => 'mango',
'f2' => 'pear',
'f3' => 'apple',
'f4' => 'banana',
];
$key = array_keys($fruit);
$fruitvalue = $key[shuffle($key)];
在页面某处回显$key & $fruitvalue
如果我希望随机值在页面上出现 120 次,则 Shuffle()、array_rand() 并不能帮助我在 4 的单个周期中保持值的唯一性 我也不能使用 i=1;i
【问题讨论】:
-
你只有 4 个! (=24) 个组合,所以会有一些重复?
-
您还想输出
f1、f2等值吗? -
输出值时使用什么作为计数器?
-
@LTPCGO 是的,重复会在那里,但我不希望它在 4 组中,假设我们有 20 个地方想要回显
$fruitvalue,所以我们可以将 20 分成五组,每组 4 个;在每个组中,所有四个都将在那里并且没有重复 shuffle() 或 array_rand() 不会重复..我想实现唯一而没有重复,并且还能够调用 $key 作为它的回声 -
@Nick 是的,所以可以说回显
$fruitvalue是芒果,我也通过回显 $key 得到 f1