2014-03-24 39 views
0

你好再次stackoverflow。我一直在使用PHP进行一些工作。现在,我需要的是PHP在我的数组中选择一个随机值并输出它。但是,不要每次都使它变得一样,每次页面加载时都会不断改变它。输出存储在数组中的随机字符串

我到目前为止什么:

<?php 
$a=array("Value 1", "Value 2", "Value 3", "Value 4", "Value 5"); 
$random_keys=array_rand($a); 
echo $random_keys; 
?> 

现在,我已经试过这个剧本,但它输出的,而不是一个值的数字。我究竟做错了什么?

回答

4

务必:

<?php 
$a=array("Value 1", "Value 2", "Value 3", "Value 4", "Value 5"); 
$random_keys=array_rand($a); 
echo $a[$random_keys]; 

array_rand返回键而不是值。您将需要使用该键返回上述值。

+0

非常感谢!我现在明白你的意思了。完美工作! – NomadsBoy

+0

@NomadsBoy不客气。如果您觉得答案对您有帮助,您可以随时将其标记为答案。它也应该帮助其他人。 –

0

它返回指数,所以你应该写:

$random_keys=$a[array_rand($a)]; 
echo $random_keys; 
2

或者,你也可以使用函数洗牌(),它重新排序原始数组。

$a=array("Value 1", "Value 2", "Value 3", "Value 4", "Value 5"); 
shuffle($a); 
echo $a[0];