我有一系列ID。现在它有125个ID。我只贴了几个。我想从中选择一个随机ID并在查询中使用它。我正在使用rand_array
,但我有一个这样的简单数组:array(1,2,3);
使用这个新数组我不知道如何获取随机ID。
array(125) {
[0]=>
object(stdClass)#21 (1) {
["id"]=>
string(1) "5"
}
[1]=>
object(stdClass)#22 (1) {
["id"]=>
string(1) "6"
}
[2]=>
object(stdClass)#23 (1) {
["id"]=>
string(1) "7"
}
[3]=>
object(stdClass)#24 (1) {
["id"]=>
string(1) "8"
}
[4]=>
object(stdClass)#25 (1) {
["id"]=>
string(1) "9"
}
[5]=>
object(stdClass)#26 (1) {
["id"]=>
string(2) "10"
}
[6]=>
object(stdClass)#27 (1) {
["id"]=>
string(2) "11"
}
[7]=>
object(stdClass)#28 (1) {
["id"]=>
string(2) "12"
}
}
答案 0 :(得分:0)
作为 @Jack commented的问题,这可能是您尝试做的最简单的方法:
echo $array[array_rand($array)]->id;
如果您希望ID用于其他目的,您可以从数组中的对象中提取ID并在该数组上应用array_rand()
:
$idsArr = array(); // Initialize an empty array
foreach ($array as $obj) {
$idsArr[] = $obj->id; // Push each ID into the array
}
$random_id = $array[array_rand($idsArr)]; // Get a random ID from the array
答案 1 :(得分:0)
你的新数组是二维的 - 你需要指定两个ID才能获取一个元素。所以试试:
$rand = rand(0,count($array));
$item=$my_array[$rand]['id'];
但是我无法理解你的数组的结构,所以如果你print_r它我可以改进这个
欢呼声