如何让它在PHP中随机显示数组中的一个项目?

时间:2013-02-21 06:10:53

标签: php arrays random

我正在努力使其在输入$hello中的一个单词时随机选择其中一个单词$bye并显示它。在我尝试它的那一刻,它只说0,1或2.我如何解决这个问题,这样它会随机给我一个来自$bye数组的单词。

<?php
$words = $_POST['words'];
$hello = array('hello', 'hi', 'yo', 'sup');
$bye = array('bye', 'seeya', 'aurevoir');
$words = preg_replace('/\b('.implode('|', $hello).')\b/i', '<span class="highlight">'.array_rand($bye).'</span>', $words);
echo $words;
?>

4 个答案:

答案 0 :(得分:1)

$index = array_rand($bye);
echo $bye[$index];

答案 1 :(得分:0)

$hello = array("Hi", "Hola", "Yo dawg! I heard you liked words in your hello!");
$bye = array("Later","Hasta Luego","Guten Tag");
echo $bye[array_rand($hello)];

答案 2 :(得分:0)

您可以将数组与preg_replace

一起使用
$words="this is any text bye";
$bye = array('/bye/', '/seeya/', '/aurevoir/'); //pattern

$hello=array('hello', 'hi', 'yo');  //$replacements
shuffle($hello);

echo preg_replace($bye, $hello, $words);

答案 3 :(得分:0)

如果你想在$bye数组$word数组$hello数组$hello = array('hello', 'hi', 'yo', 'sup'); $bye = array('bye', 'seeya', 'aurevoir'); if(in_array($word,$hello)) echo $bye[array_rand($bye)]; else echo "word is not in hello array"; 数组中选择一个随机商品,那么我不明白你的问题:

{{1}}