我想从数组中随机选择一些值,但我不确定最佳方法(在性能等方面)。我只是一个初学者,所以我不知道很多随机值的方法,也不知道它们如何影响性能和它们的确切差异。例如:“mt_rand”比“rand”函数快四倍。
如果我有这个名字数组:
$myarrayofnames = ["Marcelle","Caroll","Kristina","Tisha","Filomena","Vesta","Josphine"];
我想从他们那里挑选,我有什么选择?
答案 0 :(得分:1)
请注意 mt_rand()
和 rand()
仅用于生成随机数
From the Manual: mt_rand - 生成更好的随机值
From the Manual: rand - 生成随机整数
对于您的阵列,您可以使用array_rand()
获取随机值。
示例:强>
$myarrayofnames = ["Marcelle","Caroll","Kristina","Tisha","Filomena","Vesta","Josphine"];
$randomNo = array_rand($myarrayofnames,1);
echo $myarrayofnames[$randomNo]; // this will print the random value
如果您只希望数组中只有一个值,那么您可以在第二个参数中传递1
。
如果您希望数组中有多个值,则可以根据数组索引计数传递no
。在这种情况下,array_rand()
将返回一个数组。