来自foreach的php随机顺序

标签 php random foreach shuffle

我有一些foreach,这可以很好地工作

foreach ($umm as $data) {
        echo '<img src="'.$data->picture.'" />';
        echo  $data->id;
}

现在我想洗牌 foreach。我试过:

foreach (shuffle($umm) as $data) {
        echo '<img src="'.$data->picture.'" />';
        echo  $data->id;
}

foreach ($umm as $data) {
        $rand_pic[] = $data->picture;
        $rand_id[] = $data->id;
}
$ran = shuffle($rand_id);
foreach($ran as $new){
    echo '<img src="'.$new->picture.'" width="100" />';
    echo $new->id;
}

所有这些都导致了 Warning: Invalid argument supplied for foreach() in second foreach。如何从 foreach 中随机排序?

最佳答案

看看the documentation for shuffle() .它采用对数组的引用 并将其洗牌到位。所以你需要在数组上使用它,然后迭代:

shuffle($umm);

foreach ($umm as $data) {
        echo '<img src="'.$data->picture.'" />';
        echo  $data->id;
}

关于来自foreach的php随机顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8966037/

相关文章:

php - 如何在网站加载前对用户名和密码进行保护

php - 多变量爆破插入MySQL

php - Laravel - Passport API 集成 |错误 : {"message" :"Unauthenticated."}

mysql - mysql中有字段函数时如何使用随机函数

JavaScript 获取 HTML 文档中的 h1 元素并更新唯一 ID

javascript - 使用 typescript 在集合列表中查找元素

javascript - 如何删除提交按钮并保存图像以及在codeigniter中使用ajax显示图像?

java - java中的置信区间,测试对象列表中元素的随机选择

php - 在 foreach 循环中循环的数组中添加项目

PHP嵌套foreach