如何在PHP中从单个数组中提取3个唯一值?

如何在PHP中从单个数组中提取3个唯一值?,php,arrays,Php,Arrays,我有一个数组,我需要从中提取多个值,但我不能让这些值中的任何一个重复 这就是我现在正在做的,但它并不阻止相同值的倍数 我的阵列是: $boom=数组(“1”、“2”、“3”、“4”、“5”、“6”) 我使用这段代码中的3个来提取值: echo$boom[array_rand($boom,1)] 页面上下文中的最终结果类似于“1、4、3”(或数字的任何变体…),但我的问题是我需要脚本提取3个非重复值 如何才能做到这一点?用于获取唯一值,然后用于随机排序。然后,您可以使用获取前三个元素,并将它们作为

我有一个数组,我需要从中提取多个值,但我不能让这些值中的任何一个重复

这就是我现在正在做的,但它并不阻止相同值的倍数

我的阵列是:

$boom=数组(“1”、“2”、“3”、“4”、“5”、“6”)

我使用这段代码中的3个来提取值:

echo$boom[array_rand($boom,1)]

页面上下文中的最终结果类似于“1、4、3”(或数字的任何变体…),但我的问题是我需要脚本提取3个非重复值

如何才能做到这一点?

用于获取唯一值,然后用于随机排序。然后,您可以使用获取前三个元素,并将它们作为逗号分隔的字符串输出

$a = array_unique(array("1", "2", "3", "4", "5", "6"));
shuffle($a);
$b = array_slice($a, 0, 3);
echo implode(',', $b);

工作得很好!谢谢你的帮助。我正在尝试使用18个值的数组,而不是输出3个值,而是以随机顺序输出所有18个值。当我将数组减少到6个值时,代码运行良好。数组中值的限制是什么?我有一个小错误。请参阅更新的修复代码。该演示已经更新,以显示它的18个数组值以及工作。真棒!现在很好用。为什么加上零会有不同?@D.JasonPayne如果答案解决了您的问题,请向上投票并选择它。