-3

我的网站上有一个常见问题解答页面,我想在其他一些页面上包含一个迷你版。常见问题解答包括 21 个问题和答案,我需要一种方法,在 PHP 中,它可以随机选择其中 4 个 QA,以在每次页面加载时显示。

我根据这篇文章查看了使用 switch():http: //php.about.com/od/finishedphp1/p/random_quote.htm但我需要一些更复杂的东西,因为我不希望有任何重复在每次显示的 4 个中。最后一件事,它随机提取的文本将包含 html,而不仅仅是原始文本。

我真的很感激任何帮助。谢谢。

例子:

我使用示例文本来说明我的意思:

   <? 
    //Chooses a random number 
    $num = Rand (1,2); 
    //Based on the random number, gives a quote 
    switch ($num)
    {
    case 1:
    echo "What does such and such mean?<br>It means this and that.";
    break;
    case 2:
    echo "How does this and that work?<br>It works via such and such.";
    break;

    }
    ?> 

但这只会随机显示 1 每次。我希望随机显示 4 个,但 4 个都不重复,因此我不只是复制和粘贴上面的代码 4 次。

4

2 回答 2

2

将每个段落加载到数组元素中。打乱数组,然后输出前 4 个。

于 2013-10-09T16:24:22.313 回答
1

获取每个段落并将其添加到数组中。从数组中选择并删除一个随机条目(随机 0 到 array.length)

选择后,请务必从数组中删除该项目。

再重复选择和删除步骤 3 次,您将拥有与原始段落集没有重复的集。

注意:在效率方面,最好将段落编号之类的内容放入数组中并选择它们,然后将段落编号转换回原始段落。

于 2013-10-09T16:22:42.513 回答