我有一些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/