如何将此代码的结果随机化?
我有一个包含四个以上项目的数组,但是我想只获得四个但不按顺序排列,我怎么想这样做?可以使用foreach(array_slice
??
$i = 0;
foreach(array_slice($items_array,0,4) as $item) {
$output .= 'Item ID:'.$item['id'];
$i++;
}
我的阵列
a:6:{i:0;a:4:{s:5:"title";s:17:"Spedition";s:2:"id";s:11:"ZCXbgH1JDt4";s:3:"url";s:40:"embed/ZCXbgH1JDt4";s:5:"image";s:38:"transport";}i:1;a:4:{s:5:"title";s:77:"DC......
答案 0 :(得分:3)
$output = array_rand($items_array, 4);
答案 1 :(得分:0)
$item = array_rand($items_array, 4); //get only four at random
$i=0;
while($i<=3) { // instead of 4 you set it at 3 because the counter starts at 0
$output = 'Item ID:'.$items_array[$item[$i]]['id'];
$i++;
}
答案 2 :(得分:-1)
更好,更简单的解决方案是使用array_rand
$array = array("foo", "bar", "hallo", "world");
$rand_keys = array_rand($array,1);
echo $array[$rand_keys];
答案 3 :(得分:-1)
这应该为你做。
$i = 0;
foreach(array_rand($items_array, 4) as $item) {
$output .= 'Item ID:'.$item['id'];
$i++;
}