【问题标题】:mixing an array within a PHP foreach loop在 PHP foreach 循环中混合数组
【发布时间】:2011-07-10 20:21:09
【问题描述】:

我试图在 PHP 的 foreach 循环中以随机顺序显示一个数组。我不知道是否要创建一个随机循环来执行此操作,或者是否有一个随机函数。我正在从 Facebook 和 twitter api 捕获信息,目的是混合结果并显示为来自 Facebook 墙的 cmets 列表和来自 twitter 的推文。

如下所示,我首先将 Facebook 和 twitter 的两个数组合并为一个,然后在 foreach 循环中循环显示。目前所有的 Facebook one show 先显示,然后再显示 twitter。我想将两者随机混合。对不起,我很快就破解了代码。

如果您也有完全不同的方法来做到这一点,请不要退缩,我全神贯注! ;)

这是我的代码:

$array = array_merge ($comments, $tweets);
foreach ($array as $commentortweet) 
{
    echo '<li>'. $commentortweet->picture. $commentortweet->message . $commentortweet->updatetime . 
        $commentortweet->content. $commentortweet->user . $commentortweet->author .'</li>';
}
echo '</ul>'; 

【问题讨论】:

  • 抱歉,代码显示有点歪 ;) 但它仍然很清晰。

标签: php arrays random foreach


【解决方案1】:

您可以使用合并两个数组的方法,然后使用shuffle($array) shuffle 它们。然后,您可以循环浏览新订单并将其打印出来。

【讨论】:

  • 啊哈...如此简单 - 非常感谢,这是我得到的最快修复。干杯!
【解决方案2】:

使用 shuffle 随机化:

foreach (shuffle($array) as $commentortweet) {
....

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-10
    • 2015-04-06
    • 2011-06-09
    • 2020-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多