我创建了一个测验,使用shuffle()
函数生成随机答案。
一切都在使用阵列和随机播放。
接下来我要做的就是答案的产生。 (丰田就是一个例子。)
“丰田”
描述会说:
“丰田是一辆很棒的汽车,在这座城市生产,耗油量很大。”
我的代码:
<?php
// Array of the vehicles
$answer = array(
"Mercedes",
"Benz",
"Honda",
"Toyota",
"Nissan",
"Mazda",
"Hyundai",
"Ford",
"Lexus",
"Lamborghini",
"Ferrari",
"Porche",
"Mitsubushi",
"Scion",
"Chrysler",
"Jeep",
"Masarati"
);
// Shuffle Array
shuffle($answer);
// Echo ONE item only.
echo $answer[0];
?>
我认为我需要使用条件来执行此操作。
例如:我尝试了但它没有用。
<?php
// If array VALUE 0 is equal to Toyota after it's shuffled.
if($answer[0]=='Toyota')
{
echo "Toyota is a great car! You should buy it.";
}
if($answer[1]=='Benz')
{
echo "Benz is a great car.";
}
?>
提前致谢。赞赏。
答案 0 :(得分:4)
随机播放的结果是$answer[0];
所以,如果你不需要这个$answer[1];
,$answer[2];
....等
就像$answer[0];
:
if($answer[0]=='Toyota')
{
echo "Toyota is a great car! You should buy it.";
}
if($answer[0]=='Benz')
{
echo "Benz is a great car.";
}
答案 1 :(得分:3)
您可以以关联方式使用数组:
$comments = array(
"Toyota" => 'Toyota is a great car! You should buy it.',
'Benz' => 'Benz is a great car.',
// etc.
);
isset($comments[$answer[0]]) && echo $comments[$answer[0]];
答案 2 :(得分:3)
你想要做的那种调节将是相当乏味和不需要的。 (所有if
块)。
为什么不设置一个包含如下描述的数组:
$descriptions = array(
"Mercedes" => 'is like fast food',
"Benz" => 'sometimes',
"Honda" => 'just your descriptions',
...... etc
然后像你现在一样做洗牌,然后像这样从数组中获取描述:
// Shuffle Array
shuffle($answer);
// Echo ONE item only.
echo $answer[0];
if(isset($descriptions[$answer[0]])) {
echo $descriptions[$answer[0]];
}